]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commitdiff
Imported Translations from Transifex
authorOpenStack Jenkins <jenkins@openstack.org>
Sat, 26 Oct 2013 06:13:39 +0000 (06:13 +0000)
committerOpenStack Jenkins <jenkins@openstack.org>
Sat, 26 Oct 2013 06:13:39 +0000 (06:13 +0000)
Change-Id: Ie2ea233527914abbbd069c56cc550fc835f1abb8

52 files changed:
cinder/locale/ar/LC_MESSAGES/cinder.po
cinder/locale/bg_BG/LC_MESSAGES/cinder.po
cinder/locale/bn_IN/LC_MESSAGES/cinder.po
cinder/locale/bs/LC_MESSAGES/cinder.po
cinder/locale/ca/LC_MESSAGES/cinder.po
cinder/locale/cinder.pot
cinder/locale/cs/LC_MESSAGES/cinder.po
cinder/locale/da/LC_MESSAGES/cinder.po
cinder/locale/de/LC_MESSAGES/cinder.po
cinder/locale/en_AU/LC_MESSAGES/cinder.po
cinder/locale/en_GB/LC_MESSAGES/cinder.po
cinder/locale/en_US/LC_MESSAGES/cinder.po
cinder/locale/es/LC_MESSAGES/cinder.po
cinder/locale/es_MX/LC_MESSAGES/cinder.po
cinder/locale/fi_FI/LC_MESSAGES/cinder.po
cinder/locale/fil/LC_MESSAGES/cinder.po
cinder/locale/fr/LC_MESSAGES/cinder.po
cinder/locale/hi/LC_MESSAGES/cinder.po
cinder/locale/hr/LC_MESSAGES/cinder.po
cinder/locale/hu/LC_MESSAGES/cinder.po
cinder/locale/id/LC_MESSAGES/cinder.po
cinder/locale/it/LC_MESSAGES/cinder.po
cinder/locale/it_IT/LC_MESSAGES/cinder.po
cinder/locale/ja/LC_MESSAGES/cinder.po
cinder/locale/ka_GE/LC_MESSAGES/cinder.po
cinder/locale/kn/LC_MESSAGES/cinder.po
cinder/locale/ko/LC_MESSAGES/cinder.po
cinder/locale/ko_KR/LC_MESSAGES/cinder.po
cinder/locale/mr_IN/LC_MESSAGES/cinder.po
cinder/locale/ms/LC_MESSAGES/cinder.po
cinder/locale/nb/LC_MESSAGES/cinder.po
cinder/locale/ne/LC_MESSAGES/cinder.po
cinder/locale/nl_NL/LC_MESSAGES/cinder.po
cinder/locale/pl_PL/LC_MESSAGES/cinder.po
cinder/locale/pt/LC_MESSAGES/cinder.po
cinder/locale/pt_BR/LC_MESSAGES/cinder.po
cinder/locale/ro/LC_MESSAGES/cinder.po
cinder/locale/ru/LC_MESSAGES/cinder.po
cinder/locale/ru_RU/LC_MESSAGES/cinder.po
cinder/locale/sk/LC_MESSAGES/cinder.po
cinder/locale/sl_SI/LC_MESSAGES/cinder.po
cinder/locale/sw_KE/LC_MESSAGES/cinder.po
cinder/locale/tl/LC_MESSAGES/cinder.po
cinder/locale/tl_PH/LC_MESSAGES/cinder.po
cinder/locale/tr/LC_MESSAGES/cinder.po
cinder/locale/tr_TR/LC_MESSAGES/cinder.po
cinder/locale/uk/LC_MESSAGES/cinder.po
cinder/locale/ur/LC_MESSAGES/cinder.po
cinder/locale/vi_VN/LC_MESSAGES/cinder.po
cinder/locale/zh_CN/LC_MESSAGES/cinder.po
cinder/locale/zh_HK/LC_MESSAGES/cinder.po
cinder/locale/zh_TW/LC_MESSAGES/cinder.po

index 1c2fc9fbdcb661ca064dde5561ef390eef56c4ee..1427daa18c31366d248bf456fce17f19725633ec 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-09-12 07:56+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Arabic "
@@ -29,625 +29,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1165,40 +1165,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1394,14 +1394,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1456,12 +1456,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1472,12 +1482,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1486,7 +1496,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1498,7 +1508,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2337,40 +2352,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2480,110 +2485,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2661,11 +2638,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2851,48 +2828,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2922,6 +2895,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2973,7 +2950,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3089,6 +3066,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3663,12 +3654,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4002,127 +3993,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4398,30 +4389,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4431,8 +4422,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4870,67 +4861,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5411,7 +5402,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6814,19 +6805,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6834,49 +6825,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7054,14 +7045,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7072,6 +7063,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7081,37 +7076,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7119,111 +7114,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7231,72 +7238,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7362,237 +7374,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7769,7 +7795,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7804,87 +7830,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7907,79 +7933,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8009,57 +8041,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8301,214 +8338,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9499,3 +9536,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 06d216e2937a03c45c85adbfa75a42322b8227c7..ac913c651c5259885a6e197d0943f6f9b80166ef 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Bulgarian (Bulgaria) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 674ea070152eaa131ab11914e7da877649f193e0..ded6d6932f5c2d9e58c4024e36b1dc9d481ecd11 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-10-20 01:34+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Bengali (India) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9159,3 +9196,34 @@ msgstr ""
 msgid "Retry info not present, will not reschedule"
 msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 7a8927502c334003c7728b1b91bc4380046f5dad..e86409d49d8f19f459cb48d3ec4671c053682789 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-01-19 20:22+0000\n"
 "Last-Translator: yazar  <zrncescientiae@gmail.com>\n"
 "Language-Team: Bosnian <bs@li.org>\n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1163,40 +1163,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1392,14 +1392,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1454,12 +1454,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1470,12 +1480,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1484,7 +1494,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1496,7 +1506,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2339,40 +2354,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2482,110 +2487,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2663,11 +2640,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2854,48 +2831,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2925,6 +2898,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2976,7 +2953,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3092,6 +3069,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3666,12 +3657,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4008,127 +3999,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4404,30 +4395,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4437,8 +4428,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4876,67 +4867,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5417,7 +5408,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6820,19 +6811,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6840,49 +6831,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7060,14 +7051,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7078,6 +7069,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7087,37 +7082,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7125,111 +7120,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7237,72 +7244,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7368,237 +7380,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7775,7 +7801,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7810,87 +7836,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7913,79 +7939,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8015,57 +8047,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8307,214 +8344,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9820,3 +9857,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 9f02526d5472ed26821584ab3fbeee7b2afc592a..ac59611311410f7a50c398d544ccb9a9bc1dc9df 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Catalan "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 4d02258e5a465272ad17141bdb595bc87df94730..8dbad506ed4f1f5d28ff02339f2c93c288349567 100644 (file)
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: cinder jenkins.cinder.propose.translation.update.166\n"
+"Project-Id-Version: cinder jenkins.cinder.propose.translation.update.171\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1163,40 +1163,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1392,14 +1392,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1454,12 +1454,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1470,12 +1480,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1484,7 +1494,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1496,7 +1506,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2335,40 +2350,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2478,110 +2483,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2659,11 +2636,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2849,48 +2826,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2920,6 +2893,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2971,7 +2948,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3087,6 +3064,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3661,12 +3652,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4000,127 +3991,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4396,30 +4387,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4429,8 +4420,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4868,67 +4859,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5409,7 +5400,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6812,19 +6803,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6832,49 +6823,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7052,14 +7043,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7070,6 +7061,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7079,37 +7074,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7117,111 +7112,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7229,72 +7236,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7360,237 +7372,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7767,7 +7793,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7802,87 +7828,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7905,79 +7931,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8007,57 +8039,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8299,214 +8336,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
index fa789e20d0a4581bcc1872b6f0b2efc9fe576c06..1205f0098e1415c951a2a32e6164900821275263 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-04-04 20:28+0000\n"
 "Last-Translator: Zbyněk Schwarz <Unknown>\n"
 "Language-Team: Czech <cs@li.org>\n"
@@ -28,181 +28,181 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "Vyskytla se neočekávaná výjimka."
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr "Neschváleno."
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "Uživatel nemá správcovská oprávnění"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "Pravidla nedovolují, aby bylo %(action)s provedeno."
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "Kernel nenalezen v obrazu %(image_id)s."
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "Nepřijatelné parametry."
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, fuzzy, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr "Svazek %(volume_id)s není k ničemu připojen"
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr "Nelze načíst data do formátu json"
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 #, fuzzy
 msgid "The results are invalid."
 msgstr "Požadavek je neplatný."
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr "Neplatný typ obsahu %(content_type)s."
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr "Služba je v tuto chvíli nedostupná."
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr "Obraz %(image_id)s je nepřijatelný: %(reason)s"
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr "Zdroj nemohl být nalezen."
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr "Svazek %(volume_id)s nemohl být nastaven."
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, fuzzy, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr "Nelze nalézt účet %(account_name) on zařízení Solidfire"
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr "Svazek %(volume_id)s nemá žádná metadata s klíčem %(metadata_key)s."
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, fuzzy, 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."
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr "Typ svazku %(volume_type_id)s nemohl být nalezen."
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr "Typ svazku s názvem %(volume_type_name)s nemohl být nalezen."
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
@@ -211,449 +211,449 @@ msgstr ""
 "Typ svazku %(volume_type_id)s nemá žádné dodatečné parametry s klíčem "
 "%(extra_specs_key)s."
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr "Snímek %(snapshot_id)s nemohl být nalezen."
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr "mazání svazku %(volume_name)s který má snímek"
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr "Neplatný href %(image_href)s obrazu."
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr "Obraz %(image_id)s nemohl být nalezen."
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr "Služba %(service_id)s nemohla být nalezena."
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr "Hostitel %(host)s nemohl být nalezen."
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 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:305
+#: cinder/exception.py:306
 #, fuzzy, 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."
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr "Nelze najít binární soubor %(binary)s v hostiteli %(host)s."
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr "Kvóta nemohla být nalezena."
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 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:334
+#: cinder/exception.py:335
 #, fuzzy, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr "Třída %(class_name)s nemohla být nalezena: %(exception)s"
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, fuzzy, 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."
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, fuzzy, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr "Uživatel %(user_id)s nemohl být nalezen."
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, fuzzy, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr "Kvóta překročena"
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr "Přesun %(migration_id)s nemohl být nalezen."
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr "Soubor %(file_path)s nemohl být nalezen."
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, fuzzy, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "Typ svazku %(name)s již existuje."
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr "Poškozené tělo zprávy: %(reason)s"
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr "Nelze najít nastavení v %(path)s"
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Nelze najít nastavení v %(path)s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr "Nelze načíst aplikaci vložení '%(name)s' z %(path)s"
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr "Nebyl nalezen žádný platný hostitel. %(reason)s"
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr "Hostitel %(host)s není dostupný nebo neexistuje."
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, fuzzy, 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)"
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 "Nelze vytvořit typ_svazku s názvem %(name)s a specifikacemi "
 "%(extra_specs)s"
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr "Špatná odpověď od SolidFire API"
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr "Chyba v odpovědi SolidFire API: data=%(data)s"
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, fuzzy, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr "Poškozené tělo zprávy: %(reason)s"
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, fuzzy, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr "Neplatný stav serveru: %(status)s"
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr "Instance %(instance_id)s nemohla být nastavena."
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 #, fuzzy
 msgid "Unknown NFS exception"
 msgstr "Vyskytla se neočekávaná výjimka."
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 #, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "Vyskytla se neočekávaná výjimka."
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Poškozené tělo zprávy: %(reason)s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, fuzzy, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr "Skupina LDAP %(group_id)s nemohla být nalezena."
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "Neplatná podpůrná vrstva: %s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, fuzzy, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr "Obraz %(image_id)s nemohl být nalezen."
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -662,11 +662,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr "Oznamování schopností plácinderčům ..."
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr "Soubor JSON představující zásady"
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr "Kontrolované pravidlo, když požadované není nalezeno"
 
@@ -1177,40 +1177,40 @@ msgstr "Neshoda s tělem požadavku a URI"
 msgid "Request body contains too many items"
 msgstr "Tělo požadavku obsahuje příliš mnoho položek"
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr "Neplatné tělo požadavku"
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1406,7 +1406,7 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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 "
@@ -1415,7 +1415,7 @@ msgstr ""
 "Pouze %(value)s požadavky %(verb)s mohou být provedeny pro %(uri)s "
 "každých %(unit_string)s."
 
-#: cinder/api/v1/limits.py:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr "Tento požadavek má omezen množství."
 
@@ -1472,12 +1472,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr "Zadáno neplatné imageRef."
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Vytvořit svazek o %s GB"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, fuzzy, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr "Odstraňování voleb '%(unk_opt_str)s' z fronty"
@@ -1488,12 +1498,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1502,7 +1512,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1514,7 +1524,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, fuzzy, python-format
 msgid "Removing options '%s' from query"
 msgstr "Odstraňování voleb '%(unk_opt_str)s' z fronty"
@@ -2357,40 +2372,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, fuzzy, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2500,110 +2505,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2681,11 +2658,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2872,48 +2849,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2943,6 +2916,10 @@ msgstr "Původní výjimka je zahozena"
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2994,7 +2971,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 #, fuzzy
 msgid "in fixed duration looping call"
 msgstr "v opakujícím volání"
@@ -3112,6 +3089,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3690,12 +3681,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4032,127 +4023,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Nelze najít obslužnou rutinu pro svazek %(driver_type)s."
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4428,30 +4419,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4461,8 +4452,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Vytvořit snímek svazku %s"
@@ -4900,67 +4891,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, fuzzy, python-format
 msgid "Symbolic link %s not found"
 msgstr "značka [%s] nenalezena"
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5444,7 +5435,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6858,19 +6849,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6878,49 +6869,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7098,14 +7089,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7116,6 +7107,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7125,37 +7120,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7163,111 +7158,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7275,72 +7282,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7406,237 +7418,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, fuzzy, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr "Nelze získat metadata pro ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, fuzzy, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr "Nelze získat metadata pro ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, fuzzy, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr "Nelze získat metadata pro ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Nelze získat metadata pro ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7813,7 +7839,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7848,87 +7874,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7951,79 +7977,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8054,57 +8086,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "odpověď %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8346,214 +8383,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9859,3 +9896,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index ca606cab9d420953473fb7f7ebee904d8087df4e..866cf520c3574e1d89dcb1d43f626c6b850ee9ec 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2011-01-15 21:46+0000\n"
 "Last-Translator: Soren Hansen <soren@linux2go.dk>\n"
 "Language-Team: Danish <da@li.org>\n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1163,40 +1163,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1392,14 +1392,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1454,12 +1454,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1470,12 +1480,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1484,7 +1494,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1496,7 +1506,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2335,40 +2350,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2478,110 +2483,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2659,11 +2636,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2849,48 +2826,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2920,6 +2893,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2971,7 +2948,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3087,6 +3064,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3661,12 +3652,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4000,127 +3991,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4396,30 +4387,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4429,8 +4420,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4868,67 +4859,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5409,7 +5400,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6812,19 +6803,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6832,49 +6823,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7052,14 +7043,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7070,6 +7061,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7079,37 +7074,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7117,111 +7112,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7229,72 +7236,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7360,237 +7372,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "bind %s: slettet"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7767,7 +7793,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7802,87 +7828,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7905,79 +7931,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8007,57 +8039,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8299,214 +8336,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9812,3 +9849,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 1f8d15a95da741fcbf317cad3f0014f7f1ad6b08..9d8790034c5c43ee7ad2c5401bc6af2ba4134041 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2011-08-23 11:23+0000\n"
 "Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
 "Language-Team: German <de@li.org>\n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "keine Methode für diese Nachricht gefunden: %s"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2851,48 +2828,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2922,6 +2895,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2973,7 +2950,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3089,6 +3066,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3663,12 +3654,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4002,127 +3993,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4398,30 +4389,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4431,8 +4422,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4870,67 +4861,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5411,7 +5402,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6819,19 +6810,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6839,49 +6830,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7059,14 +7050,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7077,6 +7068,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7086,37 +7081,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7124,111 +7119,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7236,72 +7243,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7367,237 +7379,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "Volume %s: erfolgreich entfernt"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7774,7 +7800,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7809,87 +7835,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7912,79 +7938,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8014,57 +8046,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8306,214 +8343,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9819,3 +9856,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 6e0bd7e4729c84344a32e554b133a50592d19397..9b42888d1fad11e18f8e13881da759bfeb1dfb2a 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2011-10-21 11:27+0000\n"
 "Last-Translator: Tom Fifield <Unknown>\n"
 "Language-Team: English (Australia) <en_AU@li.org>\n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "Not authorized for image %(image_id)s."
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, fuzzy, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "Volume Type %(id)s already exists."
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Could not find parameter %(param)s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, 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:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Failed to copy image to volume: %(reason)s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "Invalid backup: %(reason)s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1457,12 +1457,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Create volume of %s GB"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1473,12 +1483,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1487,7 +1497,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1499,7 +1509,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2342,40 +2357,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Failed to create iscsi target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Failed to remove iscsi target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2485,110 +2490,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, 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:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Removing iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2666,11 +2643,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2857,48 +2834,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2928,6 +2901,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2979,7 +2956,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3095,6 +3072,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3672,12 +3663,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4014,127 +4005,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr "Recovering from a failed execute.  Try number %s"
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Could not find iSCSI export  for volume %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4411,30 +4402,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4444,8 +4435,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Creating clone of volume: %s"
@@ -4883,67 +4874,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5428,7 +5419,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6837,19 +6828,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6857,49 +6848,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7077,14 +7068,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7095,6 +7086,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7104,37 +7099,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7142,111 +7137,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7254,72 +7261,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7385,237 +7397,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, fuzzy, python-format
 msgid "Using NetApp filer: %s"
 msgstr "Using NetApp filer: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, fuzzy, python-format
 msgid "Destroyed LUN %s"
 msgstr "Destroyed LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, fuzzy, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr "Failed to get LUN target details for the LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, fuzzy, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr "Failed to get target portal for the LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, fuzzy, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr "Failed to get target IQN for the LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "Snapshot %s deletion successful"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Failed to get vol with required size for volume: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7792,7 +7818,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7827,87 +7853,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7930,79 +7956,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, fuzzy, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr "Volume %s does not exist in Nexenta SA"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8032,57 +8064,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "Got response: %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8324,214 +8361,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9837,3 +9874,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index ec221e166f158408fbe3779b21a87317f7569fa5..8c405f573e3b985104beb667df45779a0ed70a95 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-03-30 11:10+0000\n"
 "Last-Translator: Anthony Harrington <untaintableangel@hotmail.co.uk>\n"
 "Language-Team: English (United Kingdom) <en_GB@li.org>\n"
@@ -27,628 +27,628 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "An unknown exception occurred."
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr "Not authorised."
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "User does not have admin privileges"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "Policy doesn't allow %(action)s to be performed."
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "Unacceptable parameters."
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, fuzzy, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr "Volume %(volume_id)s is still attached, detach volume first."
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr "Failed to load data into json format"
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 #, fuzzy
 msgid "The results are invalid."
 msgstr "The request is invalid."
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr "Invalid content type %(content_type)s."
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Could not find parameter %(param)s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, 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:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 #, fuzzy
 msgid "Unknown NFS exception"
 msgstr "Unknown NFS exception"
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 #, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "Unknown Gluster exception"
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Failed to copy image to volume: %(reason)s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "Invalid backup: %(reason)s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -657,11 +657,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1168,40 +1168,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1397,14 +1397,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1460,12 +1460,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1476,12 +1486,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1490,7 +1500,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1502,7 +1512,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2345,40 +2360,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2488,110 +2493,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, 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:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Removing iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2669,11 +2646,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2860,48 +2837,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2931,6 +2904,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2982,7 +2959,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3098,6 +3075,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3675,12 +3666,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4018,127 +4009,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Could not find iSCSI export for volume %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4415,30 +4406,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4448,8 +4439,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4887,67 +4878,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5430,7 +5421,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6838,19 +6829,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6858,49 +6849,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7078,14 +7069,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7096,6 +7087,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7105,37 +7100,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7143,111 +7138,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7255,72 +7262,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7386,237 +7398,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, fuzzy, python-format
 msgid "Destroyed LUN %s"
 msgstr "Destroyed LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "Snapshot %s deletion successful"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Failed to get vol with required size for volume: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7793,7 +7819,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7828,87 +7854,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7931,79 +7957,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8033,57 +8065,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8325,214 +8362,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9838,3 +9875,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 86c92f5aeac7e9f6a340221a84dd750293158bc8..ba05abeaa2111bff60740b931c23f09d802f76fc 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: markmc <markmc@redhat.com>\n"
 "Language-Team: en_US <LL@li.org>\n"
@@ -27,180 +27,180 @@ msgstr "Arguments dropped when creating context: %s"
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "An unknown exception occurred."
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr "Exception in string format operation"
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr "Not authorized."
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "User does not have admin privileges"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "Policy doesn't allow %(action)s to be performed."
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "Not authorized for image %(image_id)s."
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "Unacceptable parameters."
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr "Volume %(volume_id)s is still attached, detach volume first."
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr "Failed to load data into json format"
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr "The results are invalid."
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr "Invalid content type %(content_type)s."
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr "Service is unavailable at this time."
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr "Image %(image_id)s is unacceptable: %(reason)s"
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, fuzzy, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr "Expected a uuid but received %(uuid)s."
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr "Resource could not be found."
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr "Volume %(volume_id)s could not be found."
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr "Unable to locate account %(account_name)s on Solidfire device"
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr "Volume type %(volume_type_id)s could not be found."
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr "Volume type with name %(volume_type_name)s could not be found."
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
@@ -209,74 +209,74 @@ msgstr ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr "Snapshot %(snapshot_id)s could not be found."
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr "deleting volume %(volume_name)s that has snapshot"
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr "deleting snapshot %(snapshot_name)s that has dependent volumes"
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr "No target id found for volume %(volume_id)s."
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr "Invalid image href %(image_href)s."
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr "Image %(image_id)s could not be found."
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr "Service %(service_id)s could not be found."
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr "Host %(host)s could not be found."
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr "Scheduler Host Filter %(filter_name)s could not be found."
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr "Scheduler Host Weigher %(weigher_name)s could not be found."
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr "Could not find binary %(binary)s on host %(host)s."
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr "Invalid reservation expiration %(expire)s."
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
@@ -285,212 +285,212 @@ msgstr ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr "Quota could not be found"
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr "Unknown quota resources %(unknown)s."
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr "Quota for project %(project_id)s could not be found."
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr "Quota class %(class_name)s could not be found."
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr "Quota usage for project %(project_id)s could not be found."
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr "Quota reservation %(uuid)s could not be found."
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr "Quota exceeded for resources: %(overs)s"
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr "Migration %(migration_id)s could not be found."
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr "File %(file_path)s could not be found."
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "Volume Type %(id)s already exists."
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr "Malformed message body: %(reason)s"
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr "Could not find config at %(path)s"
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Could not find config at %(param)s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr "Could not load paste app '%(name)s' from %(path)s"
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr "No valid host was found. %(reason)s"
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr "Host %(host)s is not up or doesn't exist."
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr "Maximum number of volumes allowed (%(allowed)d) exceeded"
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr "Detected more than one volume with name %(vol_name)s"
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr "Invalid 3PAR Domain: %(err)s"
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr "Bad response from SolidFire API"
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr "Error in SolidFire API response: data=%(data)s"
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr "Unknown or unsupported command %(cmd)s"
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr "Malformed response to command %(cmd)s: %(reason)s"
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr "Bad HTTP response status %(status)s"
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr "Operation failed with status=%(status)s. Full dump: %(data)s"
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, 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:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr "Unable to find server object for initiator %(name)s"
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr "Unable to find any active VPSA controller"
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr "Failed to retrieve attachments for volume %(name)s"
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr "Invalid attachment info for volume %(name)s: %(reason)s"
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr "Instance %(instance_id)s could not be found."
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr "Bad or unexpected response from the storage volume backend API: %(data)s"
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr "Unknown NFS exception"
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr "No mounted NFS shares found"
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr "There is no share which can host %(volume_size)sG"
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr "Unknown Gluster exception"
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr "No mounted Gluster shares found"
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
@@ -499,159 +499,159 @@ msgstr ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Failed to copy image to volume: %(reason)s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr "Backup %(backup_id)s could not be found."
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "Invalid backup: %(reason)s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, fuzzy, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr "Transfer %(transfer_id)s could not be found."
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -660,11 +660,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr "Notifying Schedulers of capabilities ..."
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr "JSON file representing policy"
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr "Rule checked when requested rule is not found"
 
@@ -1173,40 +1173,40 @@ msgstr "Request body and URI mismatch"
 msgid "Request body contains too many items"
 msgstr "Request body contains too many items"
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr "Invalid request body"
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr "No image_name was specified in request."
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1405,7 +1405,7 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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 "
@@ -1414,7 +1414,7 @@ msgstr ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
 
-#: cinder/api/v1/limits.py:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr "This request was rate-limited."
 
@@ -1469,12 +1469,22 @@ msgstr "Delete volume with id: %s"
 msgid "Invalid imageRef provided."
 msgstr "Invalid imageRef provided."
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Create volume of %s GB"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr "Removing options '%(bad_options)s' from query"
@@ -1485,12 +1495,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1499,7 +1509,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1511,7 +1521,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr "Removing options '%s' from query"
@@ -2372,40 +2387,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Failed to create iscsi target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Failed to remove iscsi target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr "Failed to attach iSCSI target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2515,28 +2520,28 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr "Creating iscsi_target for: %s"
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
@@ -2545,82 +2550,54 @@ 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr "Removing iscsi_target for: %s"
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, 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:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr "valid iqn needed for show_target"
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr "Removing iscsi_target for volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
-msgstr "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr "Creating iscsi_target for volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Removing iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr "Failed to add initiator iqn %s to target"
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 #, fuzzy
 msgid "Error creating Volume Group"
@@ -2699,11 +2676,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2894,48 +2871,44 @@ msgstr ""
 "Error contacting glance server '%(host)s:%(port)s' for '%(method)s', "
 "%(extra)s."
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr "Snapshot list encountered but no header found!"
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr "'qemu-img info' parsing failed."
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr "fmt=%(fmt)s backed by:%(backing_file)s"
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr "Converted to %(f1)s, but format is now %(f2)s"
@@ -2965,6 +2938,10 @@ msgstr "Original exception being dropped: %s"
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+msgid "Snapshot list encountered but no header found!"
+msgstr "Snapshot list encountered but no header found!"
+
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
@@ -3016,7 +2993,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr "task run outlasted interval by %s sec"
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr "in fixed duration looping call"
 
@@ -3134,6 +3111,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 msgstr "Unknown byte multiplier: %s"
 
+#: 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 "Invalid Parameter: Unicode is not supported by the current database."
@@ -3729,12 +3720,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4088,127 +4079,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr "Recovering from a failed execute.  Try number %s"
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr "copy_image_to_volume %s."
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr "ISCSI provider_location not stored, using discovery"
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Could not find iSCSI export for volume %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr "ISCSI Discovery: Found %s"
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr "Updating volume status"
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr "Driver must implement initialize_connection"
 
@@ -4486,13 +4477,13 @@ msgstr ""
 "config: %s"
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
@@ -4501,17 +4492,17 @@ msgstr ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr "Skipping ensure_export. No iscsi_target provision for volume: %s"
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr "Performing secure delete on volume: %s"
@@ -4521,8 +4512,8 @@ msgstr "Performing secure delete on volume: %s"
 msgid "Error unrecognized volume_clear option: %s"
 msgstr "Error unrecognized volume_clear option: %s"
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Creating clone of volume: %s"
@@ -4960,67 +4951,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr "snapshot: %s not found, skipping delete operations"
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr "Detected inconsistency in provider_location id"
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr "Symbolic link %s not found"
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5502,7 +5493,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -7096,19 +7087,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -7116,49 +7107,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7336,14 +7327,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7354,6 +7345,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7363,37 +7358,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7401,111 +7396,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7513,72 +7520,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7644,41 +7656,41 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr "No metadata property %(prop)s defined for the LUN %(name)s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr "Using NetApp filer: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr "Success getting LUN list from server"
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr "Created LUN with name %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr "No entry in LUN table for volume/snapshot %(name)s."
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr "Destroyed LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
@@ -7687,196 +7699,210 @@ msgstr ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr "Failed to get LUN target details for the LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr "Failed to get target portal for the LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr "Failed to get target IQN for the LUN %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "Snapshot %s deletion successful"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr "Error mapping lun. Code :%(code)s, Message:%(message)s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr "Object is not a NetApp LUN."
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr "No iscsi service found for vserver %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr "Cloned LUN with new name %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr "No clonned lun named %s found on the filer"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Failed to get vol with required size for volume: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr "Clone operation with src %(name)s and dest %(new_name)s completed"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr "Clone operation with src %(name)s and dest %(new_name)s failed"
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -8053,7 +8079,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -8088,87 +8114,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr "No storage path found for export path %s"
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr "Cloning with src %(src_path)s, dest %(dest_path)s"
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -8191,72 +8217,78 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr "Volume %s does not exist in Nexenta SA"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr "Ignored target creation error \"%s\" while ensuring export"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, python-format
 msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
@@ -8265,7 +8297,7 @@ msgstr ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8297,57 +8329,62 @@ msgstr "Auto switching to HTTPS connection to %s"
 msgid "Got response: %s"
 msgstr "Got response: %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8593,214 +8630,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10106,3 +10143,34 @@ msgstr "Retry info not present, will not reschedule"
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr "rtstool is not installed correctly"
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index d009b357301de190303ace266950c3585eb4a3f8..9e500ff4c82094d0219d64b4cfe6d124bda8ed7d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-03-10 06:08+0000\n"
 "Last-Translator: Oscar Rosario <oscar.inirio@gmail.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
@@ -27,630 +27,630 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "Una excepcion desconocida ha ocurrido"
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr "No Autorizado"
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "El usuario no tiene privilegios de administrador"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "no hay método para el mensaje: %s"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "Parametros inaceptables"
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr "Fallo al ingresar informacion en formato json"
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 #, fuzzy
 msgid "The results are invalid."
 msgstr "La petición es inválida."
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr "Tipo de contenido invalido %(content_type)s."
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr "El servicio no esta disponible en este momento"
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, fuzzy, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "el grupo %s ya existe"
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Imposible encontrar SR en VBD %s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, 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"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 #, fuzzy
 msgid "Unknown NFS exception"
 msgstr "Una excepcion desconocida ha ocurrido"
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 #, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "Una excepcion desconocida ha ocurrido"
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Imposible encontrar volumen %s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "backend inválido: %s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -659,11 +659,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1170,40 +1170,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1399,14 +1399,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1463,12 +1463,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Crear volumen de %s GB"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1479,12 +1489,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1493,7 +1503,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1505,7 +1515,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2348,40 +2363,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2491,110 +2496,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Reiniciando instancia %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2672,11 +2649,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2863,48 +2840,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2934,6 +2907,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2985,7 +2962,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3101,6 +3078,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3680,12 +3671,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "Falso ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4023,127 +4014,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr "Recuperandose de una ejecución fallida. Intenta el número %s"
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Imposible encontrar SR en VBD %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4420,30 +4411,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4453,8 +4444,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Crear volumen de %s GB"
@@ -4892,67 +4883,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5437,7 +5428,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6846,19 +6837,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6866,49 +6857,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7086,14 +7077,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7104,6 +7095,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7113,37 +7108,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7151,111 +7146,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7263,72 +7270,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7394,237 +7406,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, fuzzy, python-format
 msgid "Using NetApp filer: %s"
 msgstr "Ejecutando instancias: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, fuzzy, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, fuzzy, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, fuzzy, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "volumen %s: eliminado satisfactoriamente"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7801,7 +7827,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7836,87 +7862,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7939,79 +7965,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, fuzzy, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr "el grupo de volumenes %s no existe"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8041,57 +8073,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "respuesta %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8333,214 +8370,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9846,3 +9883,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 46066503e275373331ea35102aaca56930e30e03..7777cd20b77d450a4de54efa12b86de32c127183 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-08-30 09:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Spanish (Mexico) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9525,3 +9562,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 61f1e9f72e8f2c380ce5567aae3b107780c95154..61ca2bd752337c6c810ac0bb5e70144d47f3209d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Finnish (Finland) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index c15aacca67a2e0e028558fdaad62fea680b8ef47..a4601d0f06eabeaecb2d16862c1782d602bd1664 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-09-26 22:10+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Filipino "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9489,3 +9526,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 68c563521d4f08b3f4265215f0812e3fbd3de6bb..4259b2b91a1f1fadc162bcc37c65e56a25b7a3aa 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-04-06 14:54+0000\n"
 "Last-Translator: EmmanuelLeNormand <manu@ubuntu-fr.org>\n"
 "Language-Team: French <fr@li.org>\n"
@@ -27,630 +27,630 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "Une exception inconnue s'est produite."
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr "Non autorisé."
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "L’utilisateur n'a pas les privilèges administrateur"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 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:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "Pas de méthode pour le message : %s"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "Paramètres inacceptables."
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, fuzzy, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr "Le volume %(volume_id)s n'est lié à rien"
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr "Échec du chargement des données au format JSON"
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 #, fuzzy
 msgid "The results are invalid."
 msgstr "La requête est invalide."
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr "Le type de contenu %(content_type)s est invalide"
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr "Le service est indisponible actuellement."
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, fuzzy, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "le groupe %s existe déjà"
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Imposible de trouver une exportation iSCSI pour le volume %s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, 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"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 #, fuzzy
 msgid "Unknown NFS exception"
 msgstr "Une exception inconnue s'est produite."
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 #, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "Une exception inconnue s'est produite."
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Impossible de trouver le volume %s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "Backend invalide : %s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -659,11 +659,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1170,40 +1170,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1399,14 +1399,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1463,12 +1463,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Création d'un volume de %s Go"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1479,12 +1489,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1493,7 +1503,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1505,7 +1515,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2348,40 +2363,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Tentative de suppression d'une console non existente %(console_id)s."
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Tentative de suppression d'une console non existente %(console_id)s."
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2491,110 +2496,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Tentative de suppression d'une console non existente %(console_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Tentative de suppression d'une console non existente %(console_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Redémarrage de l'instance %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2672,11 +2649,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2863,48 +2840,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2934,6 +2907,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2985,7 +2962,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3101,6 +3078,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3680,12 +3671,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "FAUX ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4023,127 +4014,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr "Récupération après une exécution erronée. Tentative numéro %s"
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Imposible de trouver une exportation iSCSI pour le volume %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4422,30 +4413,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4455,8 +4446,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Création d'un volume de %s Go"
@@ -4894,67 +4885,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5439,7 +5430,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6852,19 +6843,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6872,49 +6863,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7092,14 +7083,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7110,6 +7101,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7119,37 +7114,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7157,111 +7152,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7269,72 +7276,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7400,237 +7412,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, fuzzy, python-format
 msgid "Using NetApp filer: %s"
 msgstr "Instance actives : %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, fuzzy, python-format
 msgid "Destroyed LUN %s"
 msgstr "Nested renvoi %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, fuzzy, 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"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, fuzzy, 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"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, fuzzy, 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"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "volume %s: supprimé avec succès"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, 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"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7807,7 +7833,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7842,87 +7868,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7945,79 +7971,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, fuzzy, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr "Le groupe de volume %s n'existe pas"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8047,57 +8079,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "réponse %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8339,214 +8376,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9852,3 +9889,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index ac230c95d556ce0885acf0aa1eb3fdbe21a3d346..3b3e845551933b7f62001283529094c17f122bf3 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-08-27 04:58+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Hindi "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9558,3 +9595,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index ab680418802a969169a344462865aeaf71d48bba..0a63ab09a1ed5161af0a9c49385cf5482af6c394 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Croatian "
@@ -29,625 +29,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1165,40 +1165,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1394,14 +1394,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1456,12 +1456,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1472,12 +1482,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1486,7 +1496,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1498,7 +1508,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2337,40 +2352,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2480,110 +2485,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2661,11 +2638,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2851,48 +2828,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2922,6 +2895,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2973,7 +2950,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3089,6 +3066,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3663,12 +3654,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4002,127 +3993,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4398,30 +4389,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4431,8 +4422,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4870,67 +4861,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5411,7 +5402,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6814,19 +6805,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6834,49 +6825,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7054,14 +7045,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7072,6 +7063,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7081,37 +7076,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7119,111 +7114,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7231,72 +7238,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7362,237 +7374,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7769,7 +7795,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7804,87 +7830,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7907,79 +7933,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8009,57 +8041,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8301,214 +8338,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9814,3 +9851,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 29d9b5f8517ab934d6559a81b3c7950e69eb147e..6775c89927eae6eacee7c23a1983d6c2e51b12f9 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Hungarian "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 546ae54fdcb822105abbdc0c987a1c64304c9a3b..ac9878246d88f3b3b1c83f148716693461819385 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Indonesian "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index f6b7666af12c6e052a0cf3affb947b5d5e6271d7..ed83696ec16beff29a55634123aee6266c05ca07 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-04-01 18:59+0000\n"
 "Last-Translator: simone.sandri <lexluxsox@hotmail.it>\n"
 "Language-Team: Italian <it@li.org>\n"
@@ -27,628 +27,628 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "E' stato riscontrato un errore sconosciuto"
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "L'utente non ha i privilegi dell'amministratore"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "nessun metodo per il messaggio: %s"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "Parametri inaccettabili."
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 #, fuzzy
 msgid "The results are invalid."
 msgstr "La richiesta non è valida."
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, 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"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 #, fuzzy
 msgid "Unknown NFS exception"
 msgstr "E' stato riscontrato un errore sconosciuto"
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 #, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "E' stato riscontrato un errore sconosciuto"
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -657,11 +657,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1168,40 +1168,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1397,14 +1397,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1460,12 +1460,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1476,12 +1486,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1490,7 +1500,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1502,7 +1512,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2345,40 +2360,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2488,110 +2493,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Riavviando l'istanza %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2669,11 +2646,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2860,48 +2837,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2931,6 +2904,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2982,7 +2959,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3098,6 +3075,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3674,12 +3665,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4017,127 +4008,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4414,30 +4405,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4447,8 +4438,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4886,67 +4877,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5429,7 +5420,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6838,19 +6829,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6858,49 +6849,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7078,14 +7069,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7096,6 +7087,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7105,37 +7100,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7143,111 +7138,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7255,72 +7262,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7386,237 +7398,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "volume %s: rimosso con successo"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7793,7 +7819,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7828,87 +7854,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7931,79 +7957,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8033,57 +8065,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "risposta %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8325,214 +8362,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9838,3 +9875,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 956d461d66f3e25cc3710ff050c471941fec881c..e91e9ff2b3b1952fc73d7c01d6e2d1af8d4c17e9 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Italian (Italy) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 999d4a5da803074716b738d404fc5a7d7edc7d58..9d66b0d2278c71a070519399de15378ec988c892 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2011-08-23 11:22+0000\n"
 "Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
 "Language-Team: \n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "メッセージ %s に対するメソッドが存在しません。"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, fuzzy, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "グループ %s は既に存在しています。"
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "ボリューム %s 用の iSCSI エクスポートが見つかりません"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr "インスタンス %(instance_name)s 用のSR %(sr_ref)s における VDI を作成できません"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "ボリューム %s の存在が確認できません。"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "不正なバックエンドです: %s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1165,40 +1165,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1394,14 +1394,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1458,12 +1458,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Create volume: %s GBのボリュームを作成します。"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1474,12 +1484,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1488,7 +1498,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1500,7 +1510,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2343,40 +2358,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2486,110 +2491,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Rebooting instance: インスタンス %s を再起動します。"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2667,11 +2644,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2858,48 +2835,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2929,6 +2902,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2980,7 +2957,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3096,6 +3073,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3673,12 +3664,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "偽のISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4015,127 +4006,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr "実行失敗からリカバリーします。%s 回目のトライ。"
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "ボリューム %s 用の iSCSI エクスポートが見つかりません"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4412,30 +4403,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4445,8 +4436,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Create volume: %s GBのボリュームを作成します。"
@@ -4884,67 +4875,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5429,7 +5420,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6838,19 +6829,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6858,49 +6849,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7078,14 +7069,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7096,6 +7087,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7105,37 +7100,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7143,111 +7138,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7255,72 +7262,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7386,237 +7398,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, fuzzy, python-format
 msgid "Using NetApp filer: %s"
 msgstr "インスタンス %s は実行中です。"
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, fuzzy, python-format
 msgid "Destroyed LUN %s"
 msgstr "ネストした戻り値: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, fuzzy, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr "ip %s に対するメタデータの取得に失敗しました。"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, fuzzy, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr "ip %s に対するメタデータの取得に失敗しました。"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, fuzzy, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr "ip %s に対するメタデータの取得に失敗しました。"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "ボリューム %s の削除に成功しました。"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "ip %s に対するメタデータの取得に失敗しました。"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7793,7 +7819,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7828,87 +7854,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7931,79 +7957,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, fuzzy, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr "ボリュームグループ%sが存在しません。"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8033,57 +8065,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "応答 %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8325,214 +8362,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9838,3 +9875,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 2534c4d51fbdbf7524d32a10fce3bd93db1ea336..588e4739f1098dd64cdd17cd70cd4153a4d555e5 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Georgian (Georgia) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index f5d183048a870d8afc7853e38dd853aea6e548c0..47e71bde5e04e4997833385c960d6cccde3a340d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-09-17 14:44+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Kannada "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9489,3 +9526,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 679b7437f464835c326c0fcc629f67725db2b3c9..cd5cf15e6715050adbd4613354dada70c56c6265 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2011-12-16 04:42+0000\n"
 "Last-Translator: Zhongyue Luo <lzyeval@gmail.com>\n"
 "Language-Team: Korean <ko@li.org>\n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr "%(instance_name)s 인스턴스의 %(sr_ref)s SR에 대한 VDI 생성이 실패했습니다"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1163,40 +1163,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1392,14 +1392,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2340,40 +2355,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2483,110 +2488,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "인스턴스 %s를 재부팅합니다"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2664,11 +2641,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2855,48 +2832,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2926,6 +2899,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2977,7 +2954,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3093,6 +3070,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3667,12 +3658,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4009,127 +4000,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4405,30 +4396,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4438,8 +4429,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4877,67 +4868,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5419,7 +5410,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6827,19 +6818,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6847,49 +6838,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7067,14 +7058,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7085,6 +7076,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7094,37 +7089,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7132,111 +7127,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7244,72 +7251,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7375,237 +7387,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7782,7 +7808,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7817,87 +7843,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7920,79 +7946,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8022,57 +8054,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8314,214 +8351,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9827,3 +9864,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 1d2e4319bf9aeee22a4f7e985e8182a2741ccd33..1a4d13c228fe4c4f86197421cdf474b2ba0b202c 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Korean (Korea) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index bbcf7ebf9f2a460abd95437c74c64bf34ac97dab..fed9c73da4cf956d28bb9ddb7aac3d52f518b517 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-10-16 22:17+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Marathi (India) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9159,3 +9196,34 @@ msgstr ""
 msgid "Retry info not present, will not reschedule"
 msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 03b50a7762dbeca33786d433aa4c8921475c81cb..4bdd866052beb00ea6fb70e2ebfacf78d14ff8c0 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Malay "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 0d1c88e42b315db0a108d11535d04080f0e404ac..ef2d1644355d92276ed83267e7106de694c2fb64 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Norwegian Bokmål "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index c2f6faf2ff63f2e52584420eabd87df0383592a6..d888c8ef0a78cdab01f22655282aa7b553e0b448 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-08-30 22:38+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Nepali "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9525,3 +9562,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index eb824ed337dc47b0501d6be40afd21cdcddc0bfe..fbf794984e3487d29badacd6ca3b591f53726a5d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Dutch (Netherlands) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 0038b2cc678493f93b61391a637edb70ffcbaad4..21630996079ac5975f3beb9bf2037a4c5724a823 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-07-01 16:14+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Polish (Poland) "
@@ -29,625 +29,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1165,40 +1165,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1394,14 +1394,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1456,12 +1456,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1472,12 +1482,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1486,7 +1496,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1498,7 +1508,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2337,40 +2352,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2480,110 +2485,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2661,11 +2638,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2851,48 +2828,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2922,6 +2895,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2973,7 +2950,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3089,6 +3066,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3663,12 +3654,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4002,127 +3993,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4398,30 +4389,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4431,8 +4422,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4870,67 +4861,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5411,7 +5402,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6814,19 +6805,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6834,49 +6825,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7054,14 +7045,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7072,6 +7063,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7081,37 +7076,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7119,111 +7114,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7231,72 +7238,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7362,237 +7374,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7769,7 +7795,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7804,87 +7830,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7907,79 +7933,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8009,57 +8041,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8301,214 +8338,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9814,3 +9851,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index a33723d5a09bc83106c912e2e1e282600c283d62..b98b94b5236d1a85e37c82754cfa8ca8b2587320 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Portuguese "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 6e06eeb96c187a5b37dd0b6d128aaac13b2f3301..c73f95eff71cb5f3011783186e16e458abc40e8b 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-02-06 21:07+0000\n"
 "Last-Translator: Adriano Steffler <Unknown>\n"
 "Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
@@ -27,627 +27,627 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "sem método para mensagem: %s"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, fuzzy, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "group %s já existe"
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Não é possível localizar o volume %s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, 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"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Não é possível localizar o volume %s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "Backend inválido: %s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1167,40 +1167,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1396,14 +1396,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1459,12 +1459,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Criar volume de %s GB"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1475,12 +1485,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1489,7 +1499,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1501,7 +1511,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2344,40 +2359,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2487,110 +2492,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Reiniciando a instância %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2668,11 +2645,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2859,48 +2836,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2930,6 +2903,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2981,7 +2958,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3097,6 +3074,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3673,12 +3664,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4015,127 +4006,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Não é possível localizar o volume %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4412,30 +4403,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4445,8 +4436,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Criar volume de %s GB"
@@ -4884,67 +4875,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5428,7 +5419,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6837,19 +6828,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6857,49 +6848,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7077,14 +7068,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7095,6 +7086,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7104,37 +7099,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7142,111 +7137,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7254,72 +7261,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7385,237 +7397,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, fuzzy, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, fuzzy, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, fuzzy, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "volume %s: remoção realizada com sucesso"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7792,7 +7818,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7827,87 +7853,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7930,79 +7956,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8032,57 +8064,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "resposta %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8324,214 +8361,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9837,3 +9874,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index ac834a2f85eb5c296ee869f009c1cf51bb7391f1..e7f1486a3f842a8ce197d64f49d9a9d1befa25ac 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-06-12 07:55+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Romanian "
@@ -29,625 +29,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1165,40 +1165,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1394,14 +1394,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1456,12 +1456,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1472,12 +1482,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1486,7 +1496,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1498,7 +1508,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2337,40 +2352,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2480,110 +2485,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2661,11 +2638,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2851,48 +2828,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2922,6 +2895,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2973,7 +2950,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3089,6 +3066,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3663,12 +3654,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4002,127 +3993,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4398,30 +4389,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4431,8 +4422,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4870,67 +4861,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5411,7 +5402,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6814,19 +6805,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6834,49 +6825,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7054,14 +7045,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7072,6 +7063,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7081,37 +7076,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7119,111 +7114,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7231,72 +7238,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7362,237 +7374,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7769,7 +7795,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7804,87 +7830,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7907,79 +7933,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8009,57 +8041,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8301,214 +8338,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9814,3 +9851,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 4705df206047ed1265f23b63c29bf0c31fd7deb6..9a6c094c465d3d49ac3e4f13bc7ce3a5edff8815 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-03-25 09:34+0000\n"
 "Last-Translator: Eugene Marshal <Unknown>\n"
 "Language-Team: Russian <ru@li.org>\n"
@@ -28,181 +28,181 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "Обнаружено неизвестное исключение."
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr "Не авторизировано."
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "Пользователь не имеет административных привилегий"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "Политика не допускает выполнения %(action)s."
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "Ядро не найдено для образа %(image_id)s."
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "Недопустимые параметры."
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, fuzzy, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr "Том %(volume_id)s никуда не присоединён"
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr "Ошибка загрузки данных в формат json"
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 #, fuzzy
 msgid "The results are invalid."
 msgstr "Недопустимый запрос."
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr "Недопустимый тип содержимого %(content_type)s."
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr "В данный момент служба недоступна."
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr "Образ %(image_id)s недопустим: %(reason)s"
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr "Ресурс не может быть найден."
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr "Том %(volume_id)s не найден."
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr "Том %(volume_id)s не имеет метаданных с ключом %(metadata_key)s."
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, fuzzy, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr "Копия %(instance_id)s не имеет метаданных с ключом %(metadata_key)s."
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr "Тип тома %(volume_type_id)s не может быть найден."
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr "Тип тома под названием %(volume_type_name)s не может быть найден."
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
@@ -211,449 +211,449 @@ msgstr ""
 "Тип тома %(volume_type_id)s не имеет дополнительных особенностей с ключом"
 " %(extra_specs_key)s."
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr "Снимок %(snapshot_id)s не может быть найден."
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr "удаление тома %(volume_name)s, который имеет снимок"
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr "Недопустимый образ href %(image_href)s."
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr "Образ %(image_id)s не найден."
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr "Служба %(service_id)s не найдена."
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr "Узел %(host)s не найден."
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, fuzzy, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr "Узел сompute %(host)s не найден."
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr "Квота не найдена"
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr "Квота проекта %(project_id)s не найдена."
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, fuzzy, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr "Класс %(class_name)s не найден: %(exception)s"
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, fuzzy, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr "Квота проекта %(project_id)s не найдена."
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, fuzzy, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr "Пользователь %(user_id)s не найден."
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, fuzzy, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr "Превышена квота"
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr "Перемещение %(migration_id)s не найдено."
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr "Файл %(file_path)s не может быть найден."
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, fuzzy, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "Тип тома %(name)s уже существует."
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr "Неправильное тело сообщения: %(reason)s"
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr "Невозможно найти конфигурацию по адресу %(path)s"
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Невозможно найти конфигурацию по адресу %(path)s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr "Допустимый узел не найден. %(reason)s"
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr "Узел %(host)s не работает или не существует."
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 "Невозможно создать volume_type с именем %(name)s и спецификациями "
 "%(extra_specs)s"
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, fuzzy, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr "Неправильное тело сообщения: %(reason)s"
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, fuzzy, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr "Недопустимое состояние сервера: %(status)s"
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr "Невозможно создать VDI на SR %(sr_ref)s для копии %(instance_name)s"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, fuzzy, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr "Невозможно найти узел для копии %s"
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr "Копия %(instance_id)s не найдена."
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 #, fuzzy
 msgid "Unknown NFS exception"
 msgstr "Обнаружено неизвестное исключение."
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 #, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "Обнаружено неизвестное исключение."
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "Невозможно найти том %s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, fuzzy, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr "Группа LDAP %(group_id)s не найдена."
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "Недопустимый внутренний интерфейс: %s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, fuzzy, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr "Образ %(image_id)s не найден."
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -662,11 +662,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1176,40 +1176,40 @@ msgstr "Тело запроса и URI не совпадают"
 msgid "Request body contains too many items"
 msgstr "Тело запроса содержит избыточное количество объектов"
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr "Недопустимый запрос тела"
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1408,7 +1408,7 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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 "
@@ -1417,7 +1417,7 @@ msgstr ""
 "Только %(value)s %(verb)s запрос(ов) могут быть сделаны для %(uri)s, "
 "каждые %(unit_string)s."
 
-#: cinder/api/v1/limits.py:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1474,12 +1474,22 @@ msgstr "Удалить том с идентификатором: %s"
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Создание раздела %s ГБ"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, fuzzy, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr "Удаление параметров '%(unk_opt_str)s' из запроса"
@@ -1490,12 +1500,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1504,7 +1514,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1516,7 +1526,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, fuzzy, python-format
 msgid "Removing options '%s' from query"
 msgstr "Удаление параметров '%(unk_opt_str)s' из запроса"
@@ -2359,40 +2374,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2502,110 +2507,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Перезагрузка копии %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2683,11 +2660,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2874,48 +2851,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr "Ошибка анализа 'qemu-img info'."
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, fuzzy, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr "Преобразование в необработанный, но текущий формат %s"
@@ -2945,6 +2918,10 @@ msgstr "Исходное исключение было сброшено"
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2996,7 +2973,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3112,6 +3089,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3701,12 +3692,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4049,128 +4040,128 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr "Восстановление после недопустимого выполнения.  Попытка номер %s"
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Невозможно найти экспортирование iSCSI для тома %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 #, fuzzy
 msgid "Updating volume status"
 msgstr "Обновление состояния узла"
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4448,30 +4439,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4481,8 +4472,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Создать снимок тома %s"
@@ -4920,67 +4911,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, fuzzy, python-format
 msgid "Symbolic link %s not found"
 msgstr "маркер [%s] не найден"
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5466,7 +5457,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6880,19 +6871,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6900,49 +6891,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7120,14 +7111,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7138,6 +7129,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7147,37 +7142,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7185,111 +7180,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7297,72 +7304,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7428,237 +7440,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, fuzzy, python-format
 msgid "Using NetApp filer: %s"
 msgstr "Выполняемые копии: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, fuzzy, python-format
 msgid "Created LUN with name %s"
 msgstr "Создана папка с адресом %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, fuzzy, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr "Ошибка получения метаданных для ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, fuzzy, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr "Ошибка получения метаданных для ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, fuzzy, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr "Ошибка получения метаданных для ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "снимок %s: удаление выполнено"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "Ошибка получения метаданных для ip: %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7835,7 +7861,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7870,87 +7896,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7973,79 +7999,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, fuzzy, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr "том группы %s не существует"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8075,57 +8107,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "ответ %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8371,214 +8408,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9884,3 +9921,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 3812f67eabdee8d3f7635d951653eee1a4e19f53..b5855b07273cea9007d2d183dec565353ca814c2 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Russian (Russia) "
@@ -29,625 +29,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1165,40 +1165,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1394,14 +1394,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1456,12 +1456,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1472,12 +1482,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1486,7 +1496,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1498,7 +1508,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2337,40 +2352,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2480,110 +2485,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2661,11 +2638,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2851,48 +2828,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2922,6 +2895,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2973,7 +2950,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3089,6 +3066,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3663,12 +3654,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4002,127 +3993,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4398,30 +4389,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4431,8 +4422,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4870,67 +4861,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5411,7 +5402,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6814,19 +6805,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6834,49 +6825,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7054,14 +7045,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7072,6 +7063,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7081,37 +7076,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7119,111 +7114,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7231,72 +7238,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7362,237 +7374,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7769,7 +7795,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7804,87 +7830,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7907,79 +7933,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8009,57 +8041,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8301,214 +8338,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9814,3 +9851,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 7b8ca34b13ada16fd7db2e3bc8eca6fcab673d05..414383ec6d4bf54ddc7c903202251846c3cc691c 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-08-27 04:58+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Slovak "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9558,3 +9595,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index f433418f676d138f1c15040cd5b1df403375fb4f..4349bf0ac88865ccbfbf7781fa4ff87657520408 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-07-01 16:14+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Slovenian (Slovenia) "
@@ -29,625 +29,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1165,40 +1165,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1394,14 +1394,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1456,12 +1456,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1472,12 +1482,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1486,7 +1496,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1498,7 +1508,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2337,40 +2352,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2480,110 +2485,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2661,11 +2638,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2851,48 +2828,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2922,6 +2895,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2973,7 +2950,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3089,6 +3066,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3663,12 +3654,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4002,127 +3993,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4398,30 +4389,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4431,8 +4422,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4870,67 +4861,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5411,7 +5402,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6814,19 +6805,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6834,49 +6825,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7054,14 +7045,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7072,6 +7063,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7081,37 +7076,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7119,111 +7114,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7231,72 +7238,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7362,237 +7374,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7769,7 +7795,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7804,87 +7830,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7907,79 +7933,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8009,57 +8041,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8301,214 +8338,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9814,3 +9851,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index a7b235e70c90d611fdb4d3bd3430961adc9aa692..747e82ed1c547e798951576c3ecf8fcafaffb14b 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Swahili (Kenya) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 94ea74c85bee92cba407a5d30b827085a2df713a..1673dcdee25eb27416e350f50bd31eb2e3ceb7c9 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2011-08-23 11:21+0000\n"
 "Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
 "Language-Team: Tagalog <tl@li.org>\n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "walang paraan para sa mensahe: %s"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1163,40 +1163,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1392,14 +1392,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1454,12 +1454,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1470,12 +1480,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1484,7 +1494,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1496,7 +1506,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2335,40 +2350,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2478,110 +2483,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2659,11 +2636,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2849,48 +2826,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2920,6 +2893,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2971,7 +2948,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3087,6 +3064,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3661,12 +3652,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4000,127 +3991,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4396,30 +4387,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4429,8 +4420,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4868,67 +4859,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5409,7 +5400,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 330e2a4d3d66018018a73e779d42207a5cc16acb..97f32c3b13b673736fbe6ff0a329982b884edb4d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-09-26 22:10+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Tagalog (Philippines) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9489,3 +9526,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 4a49d01d2cf2b1d1df389b212b6d21e7efaf3c6a..b3f49172ad4658d581106c9c4fec0d0778008d62 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2011-12-14 18:10+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Turkish <tr@li.org>\n"
@@ -27,625 +27,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -654,11 +654,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1163,40 +1163,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1392,14 +1392,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1454,12 +1454,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1470,12 +1480,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1484,7 +1494,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1496,7 +1506,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2335,40 +2350,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2478,110 +2483,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2659,11 +2636,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2849,48 +2826,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2920,6 +2893,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2971,7 +2948,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3087,6 +3064,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3661,12 +3652,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4000,127 +3991,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4396,30 +4387,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4429,8 +4420,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4868,67 +4859,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5409,7 +5400,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6812,19 +6803,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6832,49 +6823,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7052,14 +7043,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7070,6 +7061,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7079,37 +7074,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7117,111 +7112,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7229,72 +7236,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7360,237 +7372,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7767,7 +7793,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7802,87 +7828,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7905,79 +7931,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8007,57 +8039,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8299,214 +8336,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9812,3 +9849,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 06bb6ed5097cac4d4b5cdf101425734f610cc765..9f5acc8694d091a06c8c065bf069c8f4b85b05da 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Turkish (Turkey) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 7f3c0cbe8dc51ee6f2bd7e8ef0c14f0289c32064..0d89395fc0d6c0bc7cf4fe946b131e213772de14 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2011-08-23 11:21+0000\n"
 "Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
 "Language-Team: Ukrainian <uk@li.org>\n"
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "без порядку для повідомлень: %s"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Створити розділ на %s ГБ"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Створити розділ на %s ГБ"
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6814,19 +6805,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6834,49 +6825,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7054,14 +7045,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7072,6 +7063,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7081,37 +7076,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7119,111 +7114,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7231,72 +7238,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7362,237 +7374,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7769,7 +7795,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7804,87 +7830,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7907,79 +7933,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8009,57 +8041,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "відповідь %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8301,214 +8338,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9814,3 +9851,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 2b334e1962e531fa359305417a5195673d21ca99..5997746cf32df2c04c16af3603c756e0b03e8b44 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-10-07 06:14+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Urdu "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9183,3 +9220,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index e2ec74549af4b277920e5673efdc1ac3a1306270..8133d849d9f8f8a244ee529679c3bb7671eabf2d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Vietnamese (Viet Nam) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 9aeaa69fe9c84b59b84beb91d0c887d1413c1b5d..b0205d58a37a3ebeb8d4f54583ff6b4dc1125d25 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-04-03 23:36+0000\n"
 "Last-Translator: cheesecake <Unknown>\n"
 "Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
@@ -27,628 +27,628 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "发生未知异常。"
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr "未授权。"
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "用户没有管理员权限"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "政策不允许 %(action)s 被执行。"
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, fuzzy, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr "没有为镜像 %(image_id)s 找到内核。"
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "无法接受的参数。"
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, fuzzy, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr "卷 %(volume_id)s 没有附加任何东西"
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr "把数据加载为json格式失败"
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 #, fuzzy
 msgid "The results are invalid."
 msgstr "请求无效。"
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr "无效的内容类型 %(content_type)s。"
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr "该时刻服务无法使用。"
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr "镜像 %(image_id)s 无法接受,原因是: %(reason)s"
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr "资源没有找到。"
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr "卷 %(volume_id)s 没有找到。"
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, fuzzy, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr "无法找到帐户 %(account_name) on Solidfire 设备"
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr "卷 %(volume_id)s 没有含键 %(metadata_key)s 的元数据。"
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, fuzzy, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr "实例 %(instance_id)s 没有键为 %(metadata_key)s 的元数据。"
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr "卷类型 %(volume_type_id)s 没有找到。"
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr "名为 %(volume_type_name)s 的卷类型没有找到。"
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr "卷类型 %(volume_type_id)s 没有额外说明键 %(extra_specs_key)s 。"
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr "快照 %(snapshot_id)s 没有找到。"
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr "正在删除有快照的卷  %(volume_name)s"
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr "无效的镜像href %(image_href)s。"
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr "镜像 %(image_id)s 没有找到。"
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr "服务 %(service_id)s 没有找到。"
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr "主机 %(host)s 没有找到。"
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr "调度器主机过滤器 %(filter_name)s 没有找到。"
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, fuzzy, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr "调度器主机过滤器 %(filter_name)s 没有找到。"
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr "没有找到二进制 %(binary)s 在主机 %(host)s 上。"
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr "配额没有找到。"
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr "没有为项目 %(project_id)s 找到配额。"
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, fuzzy, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr "找不到类 %(class_name)s :异常 %(exception)s"
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, fuzzy, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr "没有为项目 %(project_id)s 找到配额。"
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, fuzzy, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr "用户 %(user_id)s 没有找到。"
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, fuzzy, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr "超出配额"
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr "迁移 %(migration_id)s 没有找到。"
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr "找不到文件 %(file_path)s。"
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, fuzzy, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr "卷类型 %(name)s 已经存在。"
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr "错误格式的消息体: %(reason)s"
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr "在 %(path)s 找不到配置文件。"
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "在 %(path)s 找不到配置文件。"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr "无法从路径 %(path)s 中加载应用 '%(name)s'"
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr "找不到有效主机,原因是 %(reason)s。"
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr "主机 %(host)s 没有启动或者不存在。"
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, fuzzy, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr "检测到不止一个名称为 %(vol_name) 的卷。"
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr "无法创建名称为 %(name)s 规格为 %(extra_specs)s 的卷类型。"
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr "来自SolidFire API的错误响应"
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr "SolidFire API响应里发生错误:data=%(data)s"
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, fuzzy, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr "错误格式的消息体: %(reason)s"
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, fuzzy, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr "无效的服务器状态:%(status)s"
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr "无法在存储库 %(sr_ref)s 上为实例 %(instance_name)s 创建 VDI"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, fuzzy, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr "无法找到实例 %s 的宿主机"
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr "实例 %(instance_id)s 没有找到。"
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 #, fuzzy
 msgid "Unknown NFS exception"
 msgstr "发生未知异常。"
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 #, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "发生未知异常。"
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "无法找到 %s 卷"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, fuzzy, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr "没有找到LDAP用户组 %(group_id)s。"
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, fuzzy, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr "无效的后台:%s"
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, fuzzy, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr "镜像 %(image_id)s 没有找到。"
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -657,11 +657,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr "向调度器通报能力。"
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr "JSON文件表示策略。"
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr "请求的规则找不到时的检查缺省规则。"
 
@@ -1171,40 +1171,40 @@ msgstr "请求主体和URI不匹配"
 msgid "Request body contains too many items"
 msgstr "请求主体包含太多items"
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr "无效的请求主体"
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1401,14 +1401,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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 "只能有 %(value)s 个 %(verb)s 请求发送给 %(uri)s 限定是每一个 %(unit_string)s。"
 
-#: cinder/api/v1/limits.py:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr "这个请求受到频率限制。"
 
@@ -1465,12 +1465,22 @@ msgstr "删除id为 %s 的卷"
 msgid "Invalid imageRef provided."
 msgstr "提供了无效的imageRef。"
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "创建 %s GB的卷"
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, fuzzy, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr "正在从查询语句中移除选项 '%(unk_opt_str)s'"
@@ -1481,12 +1491,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1495,7 +1505,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1507,7 +1517,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, fuzzy, python-format
 msgid "Removing options '%s' from query"
 msgstr "正在从查询语句中移除选项 '%(unk_opt_str)s'"
@@ -2350,40 +2365,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, fuzzy, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2493,110 +2498,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, fuzzy, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr "正在删除基文件:%s"
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "尝试删除不存在的控制台%(console_id)s。"
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, fuzzy, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr "跳过remove_export。没有为卷提供iscsi_target:%d"
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "正在重启虚拟机 %s"
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2674,11 +2651,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2872,48 +2849,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr "'qemu-img info'解析失败"
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, fuzzy, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr "fmt=%(fmt)s 由 %(backing_file)s 支持"
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, fuzzy, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr "转化为裸格式,但目前格式是 %s"
@@ -2943,6 +2916,10 @@ msgstr "正在丢弃原来的异常。"
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2994,7 +2971,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 #, fuzzy
 msgid "in fixed duration looping call"
 msgstr "循环调用中。"
@@ -3112,6 +3089,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 msgstr "未知的基文件:%s"
 
+#: 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 ""
@@ -3699,12 +3690,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4051,128 +4042,128 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr "从失败的执行中恢复。尝试编号 %s"
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr "采用discovery,ISCSI provider_location 没有存储"
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "无法为卷 %s 找到 iSCSI 导出"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr "ISCSI Discovery:找到 %s"
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 #, fuzzy
 msgid "Updating volume status"
 msgstr "更新主机状态"
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4450,30 +4441,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, fuzzy, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr "跳过remove_export。没有为卷提供iscsi_target:%d"
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, fuzzy, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr "跳过remove_export。没有为卷导出iscsi_target:%d"
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, fuzzy, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr "跳过ensure_export。没有为卷提供iscsi_target:%d"
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, fuzzy, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr "跳过ensure_export。没有为卷提供iscsi_target:%d"
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4483,8 +4474,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "创建卷 %s 的快照"
@@ -4922,67 +4913,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, fuzzy, python-format
 msgid "Symbolic link %s not found"
 msgstr "没有找到标记 [%s]"
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5468,7 +5459,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, fuzzy, python-format
@@ -6885,19 +6876,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6905,49 +6896,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7125,14 +7116,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7143,6 +7134,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7152,37 +7147,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7190,111 +7185,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7302,72 +7309,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7433,237 +7445,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, fuzzy, python-format
 msgid "Using NetApp filer: %s"
 msgstr "正在删除基文件:%s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, fuzzy, python-format
 msgid "Created LUN with name %s"
 msgstr "已经创建路径为 %s 的目录"
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, fuzzy, python-format
 msgid "Destroyed LUN %s"
 msgstr "嵌套(调用)返回 %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, fuzzy, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr "为ip: %s获取元数据失败"
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, fuzzy, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr "为ip: %s获取元数据失败"
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, fuzzy, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr "为ip: %s获取元数据失败"
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, fuzzy, python-format
 msgid "Snapshot %s deletion successful"
 msgstr "快照 %s:删除成功"
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "为ip: %s获取元数据失败"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7840,7 +7866,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7875,87 +7901,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7978,79 +8004,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, fuzzy, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr "卷组 %s 不存在"
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8081,57 +8113,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr "响应 %s"
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8373,214 +8410,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9886,3 +9923,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 55b60ed1e9370bcff6e858066bb5daf00db87189..b6484db4fed4fb569d8d41ae69fd9c28b11a72a4 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Chinese (Hong Kong) "
@@ -28,625 +28,625 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr ""
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr ""
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr ""
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, python-format
 msgid "Could not find parameter %(param)s"
 msgstr ""
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 msgid "Unknown NFS exception"
 msgstr ""
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 msgid "Unknown Gluster exception"
 msgstr ""
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -655,11 +655,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1164,40 +1164,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1393,14 +1393,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1455,12 +1455,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1471,12 +1481,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1485,7 +1495,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1497,7 +1507,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2336,40 +2351,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2479,110 +2484,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2660,11 +2637,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2850,48 +2827,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2921,6 +2894,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2972,7 +2949,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3088,6 +3065,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3662,12 +3653,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4001,127 +3992,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4397,30 +4388,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4430,8 +4421,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4869,67 +4860,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5410,7 +5401,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6813,19 +6804,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6833,49 +6824,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7053,14 +7044,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7071,6 +7062,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7080,37 +7075,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7118,111 +7113,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7230,72 +7237,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7361,237 +7373,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7768,7 +7794,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7803,87 +7829,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7906,79 +7932,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8008,57 +8040,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8300,214 +8337,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9813,3 +9850,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+
index 66f595eeb073a870370174d6766fbd75731137fd..e8a38e3960c10ddd83e7c102ad4df703018ee8d8 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-10-21 06:13+0000\n"
+"POT-Creation-Date: 2013-10-26 06:12+0000\n"
 "PO-Revision-Date: 2012-03-07 02:00+0000\n"
 "Last-Translator: Charles Hsu <charles0126+openstack@gmail.com>\n"
 "Language-Team: Chinese (Traditional) <zh_TW@li.org>\n"
@@ -27,627 +27,627 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:68 cinder/brick/exception.py:35
+#: cinder/exception.py:69 cinder/brick/exception.py:35
 msgid "An unknown exception occurred."
 msgstr "發生一個未知例外"
 
-#: cinder/exception.py:90 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:91 cinder/openstack/common/rpc/common.py:86
 msgid "Exception in string format operation"
 msgstr ""
 
-#: cinder/exception.py:109
+#: cinder/exception.py:110
 #, python-format
 msgid "Connection to glance failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:113
+#: cinder/exception.py:114
 msgid "Not authorized."
 msgstr "未被授權"
 
-#: cinder/exception.py:118
+#: cinder/exception.py:119
 msgid "User does not have admin privileges"
 msgstr "使用者並沒有管理者權力"
 
-#: cinder/exception.py:122
+#: cinder/exception.py:123
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: cinder/exception.py:126
+#: cinder/exception.py:127
 #, python-format
 msgid "Not authorized for image %(image_id)s."
 msgstr ""
 
-#: cinder/exception.py:130
+#: cinder/exception.py:131
 #, python-format
 msgid "Volume driver '%(driver)s' not initialized."
 msgstr ""
 
-#: cinder/exception.py:134 cinder/brick/exception.py:76
+#: cinder/exception.py:135 cinder/brick/exception.py:76
 msgid "Unacceptable parameters."
 msgstr "不可接受的參數值"
 
-#: cinder/exception.py:139
+#: cinder/exception.py:140
 #, python-format
 msgid "Invalid snapshot: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:143
+#: cinder/exception.py:144
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:148
+#: cinder/exception.py:149
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
 
-#: cinder/exception.py:152
+#: cinder/exception.py:153
 msgid "Failed to load data into json format"
 msgstr ""
 
-#: cinder/exception.py:156
+#: cinder/exception.py:157
 msgid "The results are invalid."
 msgstr ""
 
-#: cinder/exception.py:160
+#: cinder/exception.py:161
 #, python-format
 msgid "Invalid input received: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:164
+#: cinder/exception.py:165
 #, python-format
 msgid "Invalid volume type: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:168
+#: cinder/exception.py:169
 #, python-format
 msgid "Invalid volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:172
+#: cinder/exception.py:173
 #, python-format
 msgid "Invalid content type %(content_type)s."
 msgstr ""
 
-#: cinder/exception.py:176
+#: cinder/exception.py:177
 #, python-format
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:182 cinder/brick/exception.py:83
+#: cinder/exception.py:183 cinder/brick/exception.py:83
 #, python-format
 msgid "%(err)s"
 msgstr ""
 
-#: cinder/exception.py:186
+#: cinder/exception.py:187
 #, python-format
 msgid "Invalid auth key: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:190
+#: cinder/exception.py:191
 #, python-format
 msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
 msgstr ""
 
-#: cinder/exception.py:195
+#: cinder/exception.py:196
 msgid "Service is unavailable at this time."
 msgstr ""
 
-#: cinder/exception.py:199
+#: cinder/exception.py:200
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:203
+#: cinder/exception.py:204
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:207
+#: cinder/exception.py:208
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:211 cinder/brick/exception.py:70
+#: cinder/exception.py:212 cinder/brick/exception.py:70
 msgid "Resource could not be found."
 msgstr ""
 
-#: cinder/exception.py:217
+#: cinder/exception.py:218
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:221
+#: cinder/exception.py:222
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
 
-#: cinder/exception.py:226
+#: cinder/exception.py:227
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:231
+#: cinder/exception.py:232
 #, python-format
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:236
+#: cinder/exception.py:237
 #, python-format
 msgid "Invalid metadata: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:240
+#: cinder/exception.py:241
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:244
+#: cinder/exception.py:245
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
 
-#: cinder/exception.py:249
+#: cinder/exception.py:250
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:253
+#: cinder/exception.py:254
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:258
+#: cinder/exception.py:259
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:263
+#: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s deletion is not allowed with volumes "
 "present with the type."
 msgstr ""
 
-#: cinder/exception.py:268
+#: cinder/exception.py:269
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:272
+#: cinder/exception.py:273
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
 msgstr ""
 
-#: cinder/exception.py:276
+#: cinder/exception.py:277
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
 
-#: cinder/exception.py:281
+#: cinder/exception.py:282
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/exception.py:285
+#: cinder/exception.py:286
 #, python-format
 msgid "Invalid image href %(image_href)s."
 msgstr ""
 
-#: cinder/exception.py:289
+#: cinder/exception.py:290
 #, python-format
 msgid "Image %(image_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:293
+#: cinder/exception.py:294
 #, python-format
 msgid "Service %(service_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:297
+#: cinder/exception.py:298
 #, python-format
 msgid "Host %(host)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:301
+#: cinder/exception.py:302
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:305
+#: cinder/exception.py:306
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:309
+#: cinder/exception.py:310
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
 msgstr ""
 
-#: cinder/exception.py:313
+#: cinder/exception.py:314
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
 msgstr ""
 
-#: cinder/exception.py:317
+#: cinder/exception.py:318
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: cinder/exception.py:322
+#: cinder/exception.py:323
 msgid "Quota could not be found"
 msgstr ""
 
-#: cinder/exception.py:326
+#: cinder/exception.py:327
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: cinder/exception.py:330
+#: cinder/exception.py:331
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:334
+#: cinder/exception.py:335
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:338
+#: cinder/exception.py:339
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:342
+#: cinder/exception.py:343
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:346
+#: cinder/exception.py:347
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: cinder/exception.py:350
+#: cinder/exception.py:351
 #, python-format
 msgid "Migration %(migration_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:354
+#: cinder/exception.py:355
 #, python-format
 msgid "File %(file_path)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:363
+#: cinder/exception.py:364
 #, python-format
 msgid "Volume Type %(id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:367
+#: cinder/exception.py:368
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:371
+#: cinder/exception.py:372
 #, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:375
+#: cinder/exception.py:376
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr ""
 
-#: cinder/exception.py:379
+#: cinder/exception.py:380
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "找不到Volume %s"
 
-#: cinder/exception.py:383
+#: cinder/exception.py:384
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:387
+#: cinder/exception.py:388
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:391
+#: cinder/exception.py:392
 #, python-format
 msgid "Host %(host)s is not up or doesn't exist."
 msgstr ""
 
-#: cinder/exception.py:395
+#: cinder/exception.py:396
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
 msgstr ""
 
-#: cinder/exception.py:402
+#: cinder/exception.py:403
 #, 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:408
+#: cinder/exception.py:409
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:412
+#: cinder/exception.py:413
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
-#: cinder/exception.py:416
+#: cinder/exception.py:417
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
 msgstr ""
 
-#: cinder/exception.py:420
+#: cinder/exception.py:421
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
-#: cinder/exception.py:424
+#: cinder/exception.py:425
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
 
-#: cinder/exception.py:429
+#: cinder/exception.py:430
 msgid "Bad response from SolidFire API"
 msgstr ""
 
-#: cinder/exception.py:433
+#: cinder/exception.py:434
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
 msgstr ""
 
-#: cinder/exception.py:437
+#: cinder/exception.py:438
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
-#: cinder/exception.py:441
+#: cinder/exception.py:442
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:445
+#: cinder/exception.py:446
 #, python-format
 msgid "Bad HTTP response status %(status)s"
 msgstr ""
 
-#: cinder/exception.py:449
+#: cinder/exception.py:450
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:453
+#: cinder/exception.py:454
 #, fuzzy, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr "無法替 instance實例 %(instance_name)s , 建立 VDI 在SR %(sr_ref)s"
 
-#: cinder/exception.py:457
+#: cinder/exception.py:458
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
 
-#: cinder/exception.py:461
+#: cinder/exception.py:462
 msgid "Unable to find any active VPSA controller"
 msgstr ""
 
-#: cinder/exception.py:465
+#: cinder/exception.py:466
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
 msgstr ""
 
-#: cinder/exception.py:469
+#: cinder/exception.py:470
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:473
+#: cinder/exception.py:474
 #, python-format
 msgid "Instance %(instance_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:477
+#: cinder/exception.py:478
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
 
-#: cinder/exception.py:482
+#: cinder/exception.py:483
 #, fuzzy
 msgid "Unknown NFS exception"
 msgstr "發生一個未知例外"
 
-#: cinder/exception.py:486
+#: cinder/exception.py:487
 msgid "No mounted NFS shares found"
 msgstr ""
 
-#: cinder/exception.py:490 cinder/exception.py:502
+#: cinder/exception.py:491 cinder/exception.py:503
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
-#: cinder/exception.py:494
+#: cinder/exception.py:495
 #, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "發生一個未知例外"
 
-#: cinder/exception.py:498
+#: cinder/exception.py:499
 msgid "No mounted Gluster shares found"
 msgstr ""
 
-#: cinder/exception.py:506
+#: cinder/exception.py:507
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/exception.py:511
+#: cinder/exception.py:512
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
 msgstr ""
 
-#: cinder/exception.py:515
+#: cinder/exception.py:516
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:519
+#: cinder/exception.py:520
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:523
+#: cinder/exception.py:524
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:527
+#: cinder/exception.py:528
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:531
+#: cinder/exception.py:532
 #, fuzzy, python-format
 msgid "Failed to copy image to volume: %(reason)s"
 msgstr "找不到Volume %s"
 
-#: cinder/exception.py:535
+#: cinder/exception.py:536
 msgid "Invalid Ceph args provided for backup rbd operation"
 msgstr ""
 
-#: cinder/exception.py:539
+#: cinder/exception.py:540
 msgid "An error has occurred during backup operation"
 msgstr ""
 
-#: cinder/exception.py:543
+#: cinder/exception.py:544
 msgid "Backup RBD operation failed"
 msgstr ""
 
-#: cinder/exception.py:547
+#: cinder/exception.py:548
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:551
+#: cinder/exception.py:552
 msgid "Failed to identify volume backend."
 msgstr ""
 
-#: cinder/exception.py:555
+#: cinder/exception.py:556
 #, python-format
 msgid "Invalid backup: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:559
+#: cinder/exception.py:560
 #, python-format
 msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:563
+#: cinder/exception.py:564
 #, python-format
 msgid "Transfer %(transfer_id)s could not be found."
 msgstr ""
 
-#: cinder/exception.py:567
+#: cinder/exception.py:568
 #, python-format
 msgid "Volume migration failed: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:571
+#: cinder/exception.py:572
 #, python-format
 msgid "SSH command injection detected: %(command)s"
 msgstr ""
 
-#: cinder/exception.py:575
+#: cinder/exception.py:576
 msgid "Coraid Cinder Driver exception."
 msgstr ""
 
-#: cinder/exception.py:579
+#: cinder/exception.py:580
 msgid "Failed to encode json data."
 msgstr ""
 
-#: cinder/exception.py:583
+#: cinder/exception.py:584
 msgid "Login on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:587
+#: cinder/exception.py:588
 msgid "Relogin on ESM failed."
 msgstr ""
 
-#: cinder/exception.py:591
+#: cinder/exception.py:592
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
 msgstr ""
 
-#: cinder/exception.py:595
+#: cinder/exception.py:596
 #, python-format
 msgid "ESM configure request failed: %(message)s."
 msgstr ""
 
-#: cinder/exception.py:599
+#: cinder/exception.py:600
 #, python-format
 msgid "Coraid ESM not available with reason: %(reason)s."
 msgstr ""
 
-#: cinder/exception.py:603
+#: cinder/exception.py:604
 #, python-format
 msgid "QoS Specs %(specs_id)s already exists."
 msgstr ""
 
-#: cinder/exception.py:607
+#: cinder/exception.py:608
 #, python-format
 msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:612
+#: cinder/exception.py:613
 #, python-format
 msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
 msgstr ""
 
-#: cinder/exception.py:617
+#: cinder/exception.py:618
 #, python-format
 msgid "No such QoS spec %(specs_id)s."
 msgstr ""
 
-#: cinder/exception.py:621
+#: cinder/exception.py:622
 #, python-format
 msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:626
+#: cinder/exception.py:627
 #, python-format
 msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
 msgstr ""
 
-#: cinder/exception.py:631
+#: cinder/exception.py:632
 #, python-format
 msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
 msgstr ""
 
-#: cinder/exception.py:636
+#: cinder/exception.py:637
 #, python-format
 msgid "Invalid qos specs: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:640
+#: cinder/exception.py:641
 #, python-format
 msgid "QoS Specs %(specs_id)s is still associated with entities."
 msgstr ""
 
-#: cinder/exception.py:644
+#: cinder/exception.py:645
 #, python-format
 msgid "key manager error: %(reason)s"
 msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
 
-#: cinder/policy.py:31
+#: cinder/policy.py:32
 msgid "JSON file representing policy"
 msgstr ""
 
-#: cinder/policy.py:34
+#: cinder/policy.py:35
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
@@ -1165,40 +1165,40 @@ msgstr ""
 msgid "Request body contains too many items"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:94
+#: cinder/api/contrib/volume_actions.py:98
 #, 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:102
+#: cinder/api/contrib/volume_actions.py:106
 msgid "Invalid request to attach volume to an invalid target"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:106
+#: cinder/api/contrib/volume_actions.py:110
 msgid ""
 "Invalid request to attach volume with an invalid mode. Attaching mode "
 "should be 'rw' or 'ro'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:184
+#: cinder/api/contrib/volume_actions.py:216
 msgid "Invalid request body"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:188
+#: cinder/api/contrib/volume_actions.py:220
 msgid "No image_name was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:224
+#: cinder/api/contrib/volume_actions.py:261
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:238
+#: cinder/api/contrib/volume_actions.py:278
 msgid "No 'os-update_readonly_flag' was specified in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:245
+#: cinder/api/contrib/volume_actions.py:285
 msgid "Volume 'readonly' flag must be specified in request as a boolean."
 msgstr ""
 
@@ -1394,14 +1394,14 @@ msgid ""
 "cinder.api.versions.Versions instead."
 msgstr ""
 
-#: cinder/api/v1/limits.py:138 cinder/api/v2/limits.py:138
+#: 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:263 cinder/api/v2/limits.py:261
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
 msgstr ""
 
@@ -1456,12 +1456,22 @@ msgstr ""
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:400 cinder/api/v2/volumes.py:366
+#: cinder/api/v1/volumes.py:386 cinder/api/v2/volumes.py:352
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:399
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:410 cinder/api/v2/volumes.py:375
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:484
+#: cinder/api/v1/volumes.py:494
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1472,12 +1482,12 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:225
-#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:410
+#: cinder/api/v2/volumes.py:311 cinder/api/v2/volumes.py:419
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:406
+#: cinder/api/v2/snapshots.py:221 cinder/api/v2/volumes.py:415
 msgid "Missing request body"
 msgstr ""
 
@@ -1486,7 +1496,7 @@ msgid "Volume type not found"
 msgstr ""
 
 #: cinder/api/v2/volumes.py:216 cinder/api/v2/volumes.py:233
-#: cinder/api/v2/volumes.py:440
+#: cinder/api/v2/volumes.py:449
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1498,7 +1508,12 @@ msgstr ""
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:463
+#: cinder/api/v2/volumes.py:364
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:472
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -2341,40 +2356,30 @@ msgstr ""
 
 #: cinder/brick/exception.py:99
 #, python-format
-msgid "Failed to create iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:103
-#, python-format
-msgid "Failed to remove iser target for volume %(volume_id)s."
-msgstr ""
-
-#: cinder/brick/exception.py:107
-#, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:111
+#: cinder/brick/exception.py:103
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:115
+#: cinder/brick/exception.py:107
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:119
+#: cinder/brick/exception.py:111
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:123
+#: cinder/brick/exception.py:115
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:127
+#: cinder/brick/exception.py:119
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2484,110 +2489,82 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:127
+#: cinder/brick/iscsi/iscsi.py:138
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:145
+#: cinder/brick/iscsi/iscsi.py:156
 #, 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
+#: cinder/brick/iscsi/iscsi.py:175
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:207 cinder/brick/iscsi/iscsi.py:351
+#: cinder/brick/iscsi/iscsi.py:210 cinder/brick/iscsi/iscsi.py:354
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "找不到Volume %s"
 
-#: cinder/brick/iscsi/iscsi.py:218
+#: cinder/brick/iscsi/iscsi.py:221
 #, 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:249
+#: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:266
+#: cinder/brick/iscsi/iscsi.py:269
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "找不到Volume %s"
 
-#: cinder/brick/iscsi/iscsi.py:276 cinder/brick/iscsi/iscsi.py:529
-#: cinder/brick/iser/iser.py:189
+#: cinder/brick/iscsi/iscsi.py:279 cinder/brick/iscsi/iscsi.py:532
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:358
+#: cinder/brick/iscsi/iscsi.py:361
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:451
-msgid "rtstool is not installed correctly"
+#: cinder/brick/iscsi/iscsi.py:454
+msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:471
+#: cinder/brick/iscsi/iscsi.py:474
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:495 cinder/brick/iscsi/iscsi.py:504
+#: cinder/brick/iscsi/iscsi.py:498 cinder/brick/iscsi/iscsi.py:507
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:511
+#: cinder/brick/iscsi/iscsi.py:514
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:524
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:553
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
 
-#: cinder/brick/iser/iser.py:121
-#, python-format
-msgid "Creating iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:139
-#, python-format
-msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:150
-#, python-format
-msgid ""
-"Failed to create iser target for volume id:%(vol_id)s. Please ensure your"
-" tgtd config file contains 'include %(volumes_dir)s/*'"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:162
-#, python-format
-msgid "Removing iser_target for: %s"
-msgstr ""
-
-#: cinder/brick/iser/iser.py:179
-#, python-format
-msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
-msgstr ""
-
 #: cinder/brick/local_dev/lvm.py:74
 msgid "Error creating Volume Group"
 msgstr ""
@@ -2665,11 +2642,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:132
+#: cinder/common/config.py:134
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:135
+#: cinder/common/config.py:137
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2856,48 +2833,44 @@ msgstr ""
 msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
 msgstr ""
 
-#: cinder/image/image_utils.py:122
-msgid "Snapshot list encountered but no header found!"
-msgstr ""
-
-#: cinder/image/image_utils.py:227 cinder/image/image_utils.py:312
+#: cinder/image/image_utils.py:96 cinder/image/image_utils.py:181
 msgid "'qemu-img info' parsing failed."
 msgstr ""
 
-#: cinder/image/image_utils.py:234
+#: cinder/image/image_utils.py:103
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:281
+#: cinder/image/image_utils.py:150
 #, 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:288
+#: cinder/image/image_utils.py:157
 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:302
+#: cinder/image/image_utils.py:171
 #, python-format
 msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:319
+#: cinder/image/image_utils.py:188
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:337
+#: cinder/image/image_utils.py:206
 #, python-format
 msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
-#: cinder/image/image_utils.py:373
+#: cinder/image/image_utils.py:242
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
 msgstr ""
@@ -2927,6 +2900,10 @@ msgstr ""
 msgid "Reloading cached file %s"
 msgstr ""
 
+#: cinder/openstack/common/imageutils.py:96
+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`"
@@ -2978,7 +2955,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:91
-#: cinder/tests/brick/test_brick_connector.py:453
+#: cinder/tests/brick/test_brick_connector.py:454
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3094,6 +3071,20 @@ msgstr ""
 msgid "Unknown byte multiplier: %s"
 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 ""
@@ -3669,12 +3660,12 @@ msgstr ""
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:733
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:734
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1017
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1018
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -4012,127 +4003,127 @@ msgstr ""
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/driver.py:183 cinder/volume/drivers/netapp/nfs.py:185
+#: cinder/volume/driver.py:182 cinder/volume/drivers/netapp/nfs.py:185
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
 
-#: cinder/volume/driver.py:276
+#: cinder/volume/driver.py:275
 #, python-format
 msgid "copy_data_between_volumes %(src)s -> %(dest)s."
 msgstr ""
 
-#: cinder/volume/driver.py:289 cinder/volume/driver.py:303
+#: cinder/volume/driver.py:288 cinder/volume/driver.py:302
 #, python-format
 msgid "Failed to attach volume %(vol)s"
 msgstr ""
 
-#: cinder/volume/driver.py:319
+#: cinder/volume/driver.py:318
 #, python-format
 msgid "Failed to copy volume %(src)s to %(dest)d"
 msgstr ""
 
-#: cinder/volume/driver.py:332
+#: cinder/volume/driver.py:331
 #, python-format
 msgid "copy_image_to_volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:348
+#: cinder/volume/driver.py:347
 #, python-format
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:383 cinder/volume/driver.py:968
+#: cinder/volume/driver.py:382 cinder/volume/driver.py:969
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:417
+#: cinder/volume/driver.py:416
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:435
+#: cinder/volume/driver.py:434
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:458
+#: cinder/volume/driver.py:457
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:492 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
+#: cinder/volume/driver.py:491 cinder/volume/drivers/emc/emc_smis_iscsi.py:115
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:543
+#: cinder/volume/driver.py:542
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "找不到Volume %s"
 
-#: cinder/volume/driver.py:547 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
+#: cinder/volume/driver.py:546 cinder/volume/drivers/emc/emc_smis_iscsi.py:158
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:644
+#: cinder/volume/driver.py:643
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:674 cinder/volume/drivers/lvm.py:353
+#: cinder/volume/driver.py:673 cinder/volume/drivers/lvm.py:352
 #: cinder/volume/drivers/storwize_svc.py:1538
 #: cinder/volume/drivers/zadara.py:658
 #: cinder/volume/drivers/emc/emc_smis_common.py:858
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:237
-#: cinder/volume/drivers/netapp/iscsi.py:1038
-#: cinder/volume/drivers/netapp/iscsi.py:1390
-#: cinder/volume/drivers/nexenta/iscsi.py:440
+#: cinder/volume/drivers/netapp/iscsi.py:1040
+#: cinder/volume/drivers/netapp/iscsi.py:1414
+#: cinder/volume/drivers/nexenta/iscsi.py:443
 #: cinder/volume/drivers/windows/windows.py:206
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:757
+#: cinder/volume/driver.py:758
 msgid "ISER provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:805
+#: cinder/volume/driver.py:806
 #, python-format
 msgid "Could not find iSER export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:809
+#: cinder/volume/driver.py:810
 #, python-format
 msgid "ISER Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:871
+#: cinder/volume/driver.py:872
 #, python-format
 msgid "Failed to access the device on the path %(path)s: %(error)s."
 msgstr ""
 
-#: cinder/volume/driver.py:944
+#: cinder/volume/driver.py:945
 #, python-format
 msgid "iSER device not found at %s"
 msgstr ""
 
-#: cinder/volume/driver.py:948
+#: cinder/volume/driver.py:949
 #, python-format
 msgid ""
 "ISER volume not yet found at: %(host_device)s. Will rescan & retry.  Try "
 "number: %(tries)s."
 msgstr ""
 
-#: cinder/volume/driver.py:961
+#: cinder/volume/driver.py:962
 #, python-format
 msgid "Found iSER node %(host_device)s (after %(tries)s rescans)."
 msgstr ""
 
-#: cinder/volume/driver.py:978 cinder/volume/manager.py:803
+#: cinder/volume/driver.py:979 cinder/volume/manager.py:803
 #: cinder/volume/drivers/eqlx.py:247
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/driver.py:1057
+#: cinder/volume/driver.py:1058
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
@@ -4408,30 +4399,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:639
-#: cinder/volume/drivers/lvm.py:654
+#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:638
+#: cinder/volume/drivers/lvm.py:653
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:672
+#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:671
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:468
+#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:467
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:489
+#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:488
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:229
+#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:228
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4441,8 +4432,8 @@ msgstr ""
 msgid "Error unrecognized volume_clear option: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:298
-#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:189
+#: cinder/volume/drivers/block_device.py:307 cinder/volume/drivers/lvm.py:297
+#: cinder/volume/drivers/zadara.py:517 cinder/volume/drivers/nexenta/nfs.py:192
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
@@ -4880,67 +4871,67 @@ msgstr ""
 msgid "mkfs failed on volume %(vol)s, error message was: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:191
+#: cinder/volume/drivers/lvm.py:190
 #, python-format
 msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:217
+#: cinder/volume/drivers/lvm.py:216
 #, python-format
 msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:223
+#: cinder/volume/drivers/lvm.py:222
 #, python-format
 msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:261
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:355
+#: cinder/volume/drivers/lvm.py:354
 #, python-format
 msgid "Unable to update stats on non-intialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:447
+#: cinder/volume/drivers/lvm.py:446
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:467
+#: cinder/volume/drivers/lvm.py:466
 #, python-format
 msgid "volume_info:%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:788
+#: cinder/volume/drivers/lvm.py:502 cinder/volume/drivers/lvm.py:787
 msgid "Detected inconsistency in provider_location id"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:504 cinder/volume/drivers/lvm.py:708
+#: cinder/volume/drivers/lvm.py:503 cinder/volume/drivers/lvm.py:707
 #: cinder/volume/drivers/huawei/rest_common.py:1227
 #, python-format
 msgid "%s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:558
+#: cinder/volume/drivers/lvm.py:557
 #, python-format
 msgid "Symbolic link %s not found"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:774
+#: cinder/volume/drivers/lvm.py:773
 #, python-format
 msgid "Skipping ensure_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:865
+#: cinder/volume/drivers/lvm.py:864
 #, python-format
 msgid "Skipping remove_export. No iser_target provisioned for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:881
+#: cinder/volume/drivers/lvm.py:880
 #, python-format
 msgid ""
 "Skipping remove_export. No iser_target is presently exported for volume: "
@@ -5423,7 +5414,7 @@ msgid "Unable to determine pool extent size"
 msgstr ""
 
 #: cinder/volume/drivers/storwize_svc.py:362
-#: cinder/volume/drivers/netapp/iscsi.py:132
+#: cinder/volume/drivers/netapp/iscsi.py:134
 #: cinder/volume/drivers/netapp/nfs.py:644
 #: cinder/volume/drivers/san/hp/hp_3par_common.py:160
 #, python-format
@@ -6831,19 +6822,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/huawei_dorado.py:94
-#: cinder/volume/drivers/huawei/huawei_t.py:455
+#: cinder/volume/drivers/huawei/huawei_t.py:463
 #, python-format
 msgid "initialize_connection: Target FC ports WWNS: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:99
+#: cinder/volume/drivers/huawei/huawei_t.py:103
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(ini)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:157
+#: cinder/volume/drivers/huawei/huawei_t.py:161
 #: cinder/volume/drivers/huawei/rest_common.py:1280
 #, python-format
 msgid ""
@@ -6851,49 +6842,49 @@ msgid ""
 "check config file."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:204
+#: cinder/volume/drivers/huawei/huawei_t.py:208
 #: cinder/volume/drivers/huawei/rest_common.py:1085
 #, python-format
 msgid "_get_tgt_iqn: iSCSI IP is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:232
+#: cinder/volume/drivers/huawei/huawei_t.py:236
 #, python-format
 msgid "_get_tgt_iqn: iSCSI target iqn is %s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:246
+#: cinder/volume/drivers/huawei/huawei_t.py:250
 #, 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:321
-#: cinder/volume/drivers/huawei/huawei_t.py:546
+#: cinder/volume/drivers/huawei/huawei_t.py:325
+#: cinder/volume/drivers/huawei/huawei_t.py:554
 #, python-format
 msgid ""
 "terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
 "%(initiator)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:349
+#: cinder/volume/drivers/huawei/huawei_t.py:353
 #, python-format
 msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:430
+#: cinder/volume/drivers/huawei/huawei_t.py:438
 msgid "validate_connector: The FC driver requires thewwpns in the connector."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:437
+#: cinder/volume/drivers/huawei/huawei_t.py:445
 #, python-format
 msgid ""
 "initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
 "%(wwn)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_t.py:572
+#: cinder/volume/drivers/huawei/huawei_t.py:580
 #, python-format
 msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
 msgstr ""
@@ -7071,14 +7062,14 @@ msgid "The config parameters are: %s"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1241
-#: cinder/volume/drivers/huawei/ssh_common.py:117
-#: cinder/volume/drivers/huawei/ssh_common.py:1187
+#: cinder/volume/drivers/huawei/ssh_common.py:120
+#: cinder/volume/drivers/huawei/ssh_common.py:1267
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1248
-#: cinder/volume/drivers/huawei/ssh_common.py:124
+#: cinder/volume/drivers/huawei/ssh_common.py:127
 msgid "_check_conf_file: Config file invalid. StoragePool must be set."
 msgstr ""
 
@@ -7089,6 +7080,10 @@ msgid ""
 "The valid values are: %(os_list)s"
 msgstr ""
 
+#: cinder/volume/drivers/huawei/rest_common.py:1302
+msgid "Can not find lun in array"
+msgstr ""
+
 #: cinder/volume/drivers/huawei/ssh_common.py:56
 #, python-format
 msgid "ssh_read: Read SSH timeout. %s"
@@ -7098,37 +7093,37 @@ msgstr ""
 msgid "No response message. Please check system status."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:102
-#: cinder/volume/drivers/huawei/ssh_common.py:1173
+#: cinder/volume/drivers/huawei/ssh_common.py:103
+#: cinder/volume/drivers/huawei/ssh_common.py:1251
 msgid "do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:134
-#: cinder/volume/drivers/huawei/ssh_common.py:1209
+#: cinder/volume/drivers/huawei/ssh_common.py:137
+#: cinder/volume/drivers/huawei/ssh_common.py:1289
 #, 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:168
+#: cinder/volume/drivers/huawei/ssh_common.py:171
 #, python-format
 msgid "_get_login_info: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:214
+#: cinder/volume/drivers/huawei/ssh_common.py:226
 #, python-format
 msgid "create_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:232
+#: cinder/volume/drivers/huawei/ssh_common.py:244
 #, 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:269
+#: cinder/volume/drivers/huawei/ssh_common.py:281
 #, python-format
 msgid ""
 "_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
@@ -7136,111 +7131,123 @@ msgid ""
 "file %(conf)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:363
-#: cinder/volume/drivers/huawei/ssh_common.py:1354
+#: cinder/volume/drivers/huawei/ssh_common.py:375
+#: cinder/volume/drivers/huawei/ssh_common.py:1453
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:385
+#: cinder/volume/drivers/huawei/ssh_common.py:397
 msgid ""
 "_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:411
+#: cinder/volume/drivers/huawei/ssh_common.py:423
 #, 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:426
+#: cinder/volume/drivers/huawei/ssh_common.py:438
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:456
+#: cinder/volume/drivers/huawei/ssh_common.py:468
 #, 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:491
+#: cinder/volume/drivers/huawei/ssh_common.py:503
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:513
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:508
+#: cinder/volume/drivers/huawei/ssh_common.py:518
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:538
+#: cinder/volume/drivers/huawei/ssh_common.py:572
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:548
+#: cinder/volume/drivers/huawei/ssh_common.py:582
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:618
+#: cinder/volume/drivers/huawei/ssh_common.py:652
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:656
+#: cinder/volume/drivers/huawei/ssh_common.py:690
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:665
+#: cinder/volume/drivers/huawei/ssh_common.py:699
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:703
+#: cinder/volume/drivers/huawei/ssh_common.py:741
+#, 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:749
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:781
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:709
+#: cinder/volume/drivers/huawei/ssh_common.py:787
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:716
+#: cinder/volume/drivers/huawei/ssh_common.py:794
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:857
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:789
+#: cinder/volume/drivers/huawei/ssh_common.py:867
 #, 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:797
+#: cinder/volume/drivers/huawei/ssh_common.py:875
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:840
+#: cinder/volume/drivers/huawei/ssh_common.py:918
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7248,72 +7255,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:857
+#: cinder/volume/drivers/huawei/ssh_common.py:935
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1003
+#: cinder/volume/drivers/huawei/ssh_common.py:1081
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1026
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1030
+#: cinder/volume/drivers/huawei/ssh_common.py:1108
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1043
+#: cinder/volume/drivers/huawei/ssh_common.py:1121
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1062
+#: cinder/volume/drivers/huawei/ssh_common.py:1140
 #, 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:1070
+#: cinder/volume/drivers/huawei/ssh_common.py:1148
 #, 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:1109
+#: cinder/volume/drivers/huawei/ssh_common.py:1187
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1199
+#: cinder/volume/drivers/huawei/ssh_common.py:1279
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1233
+#: cinder/volume/drivers/huawei/ssh_common.py:1313
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1301
+#: cinder/volume/drivers/huawei/ssh_common.py:1391
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1308
+#: cinder/volume/drivers/huawei/ssh_common.py:1398
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1316
+#: cinder/volume/drivers/huawei/ssh_common.py:1406
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1415
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7379,237 +7391,251 @@ msgid ""
 "resolve the issue '%s'."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:79
+#: cinder/volume/drivers/netapp/iscsi.py:81
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:115
+#: cinder/volume/drivers/netapp/iscsi.py:117
 #, python-format
 msgid "Using NetApp filer: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:160
+#: cinder/volume/drivers/netapp/iscsi.py:162
 msgid "Success getting LUN list from server"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:176
+#: cinder/volume/drivers/netapp/iscsi.py:178
 #, python-format
 msgid "Created LUN with name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:185
+#: cinder/volume/drivers/netapp/iscsi.py:187
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:201
+#: cinder/volume/drivers/netapp/iscsi.py:203
 #, python-format
 msgid "Destroyed LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:237
+#: cinder/volume/drivers/netapp/iscsi.py:239
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:242
+#: cinder/volume/drivers/netapp/iscsi.py:244
 #, python-format
 msgid ""
 "Succesfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:248
+#: cinder/volume/drivers/netapp/iscsi.py:250
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:259
+#: cinder/volume/drivers/netapp/iscsi.py:261
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:262
+#: cinder/volume/drivers/netapp/iscsi.py:264
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:300
+#: cinder/volume/drivers/netapp/iscsi.py:302
 #, python-format
 msgid "Snapshot %s deletion successful"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:320
-#: cinder/volume/drivers/netapp/iscsi.py:575
+#: cinder/volume/drivers/netapp/iscsi.py:322
+#: cinder/volume/drivers/netapp/iscsi.py:577
 #: cinder/volume/drivers/netapp/nfs.py:110
 #: cinder/volume/drivers/netapp/nfs.py:217
 #, python-format
 msgid "Resizing %s failed. Cleaning volume."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:335
+#: cinder/volume/drivers/netapp/iscsi.py:337
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:422
+#: cinder/volume/drivers/netapp/iscsi.py:424
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:441
+#: cinder/volume/drivers/netapp/iscsi.py:443
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:521
+#: cinder/volume/drivers/netapp/iscsi.py:523
 msgid "Object is not a NetApp LUN."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:553
+#: cinder/volume/drivers/netapp/iscsi.py:555
 #, python-format
 msgid "Message: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:555
+#: cinder/volume/drivers/netapp/iscsi.py:557
 #, python-format
 msgid "Error getting lun attribute. Exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:610
+#: cinder/volume/drivers/netapp/iscsi.py:612
 #, python-format
 msgid "No need to extend volume %s as it is already the requested new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:616
+#: cinder/volume/drivers/netapp/iscsi.py:618
 #, python-format
 msgid "Resizing lun %s directly to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:643
+#: cinder/volume/drivers/netapp/iscsi.py:645
 #, python-format
 msgid "Lun %(path)s geometry failed. Message - %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:672
+#: cinder/volume/drivers/netapp/iscsi.py:674
 #, python-format
 msgid "Moving lun %(name)s to %(new_name)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:687
+#: cinder/volume/drivers/netapp/iscsi.py:689
 #, python-format
 msgid "Resizing lun %s using sub clone to new size."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:694
+#: cinder/volume/drivers/netapp/iscsi.py:696
 #, python-format
 msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:700
+#: cinder/volume/drivers/netapp/iscsi.py:702
 #, python-format
 msgid "%s cannot be sub clone resized as it contains no blocks."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:717
+#: cinder/volume/drivers/netapp/iscsi.py:719
 #, python-format
 msgid "Post clone resize lun %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:728
+#: cinder/volume/drivers/netapp/iscsi.py:730
 #, python-format
 msgid "Failure staging lun %s to tmp."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:733
+#: cinder/volume/drivers/netapp/iscsi.py:735
 #, python-format
 msgid "Failure moving new cloned lun to %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:737
+#: cinder/volume/drivers/netapp/iscsi.py:739
 #, python-format
 msgid "Failure deleting staged tmp lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:740
+#: cinder/volume/drivers/netapp/iscsi.py:742
 #, python-format
 msgid "Unknown exception in post clone resize lun %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:742
+#: cinder/volume/drivers/netapp/iscsi.py:744
 #, python-format
 msgid "Exception details: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:746
+#: cinder/volume/drivers/netapp/iscsi.py:748
 msgid "Getting lun block count."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:751
+#: cinder/volume/drivers/netapp/iscsi.py:753
 #, python-format
 msgid "Failure getting lun info for %s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:791
+#: cinder/volume/drivers/netapp/iscsi.py:793
 #, python-format
 msgid "Failed to get vol with required size and extra specs for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:802
+#: cinder/volume/drivers/netapp/iscsi.py:804
 #, python-format
 msgid "Error provisioning vol %(name)s on %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:847
+#: cinder/volume/drivers/netapp/iscsi.py:849
 #, python-format
 msgid "No iscsi service found for vserver %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:988
+#: cinder/volume/drivers/netapp/iscsi.py:990
 #, python-format
 msgid "Cloned LUN with new name %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:992
+#: cinder/volume/drivers/netapp/iscsi.py:994
 #, python-format
 msgid "No clonned lun named %s found on the filer"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1086
+#: cinder/volume/drivers/netapp/iscsi.py:1092
 msgid "Cluster ssc is not updated. No volume stats found."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1130
-#: cinder/volume/drivers/netapp/nfs.py:1053
+#: cinder/volume/drivers/netapp/iscsi.py:1144
+#: cinder/volume/drivers/netapp/nfs.py:1057
 msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1134
-#: cinder/volume/drivers/netapp/nfs.py:1057
+#: cinder/volume/drivers/netapp/iscsi.py:1148
+#: cinder/volume/drivers/netapp/nfs.py:1061
 msgid "Api version could not be determined."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1145
+#: cinder/volume/drivers/netapp/iscsi.py:1159
 #, fuzzy, python-format
 msgid "Failed to get vol with required size for volume: %s"
 msgstr "找不到Volume %s"
 
-#: cinder/volume/drivers/netapp/iscsi.py:1245
+#: cinder/volume/drivers/netapp/iscsi.py:1268
 #, python-format
 msgid "Error finding luns for volume %s. Verify volume exists."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1361
+#: cinder/volume/drivers/netapp/iscsi.py:1385
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/iscsi.py:1364
+#: cinder/volume/drivers/netapp/iscsi.py:1388
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
 
+#: cinder/volume/drivers/netapp/iscsi.py:1451
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1457
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1465
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
 #: cinder/volume/drivers/netapp/nfs.py:115
 #: cinder/volume/drivers/netapp/nfs.py:222
 #, python-format
@@ -7786,7 +7812,7 @@ msgid "Shares on vserver %s will only be used for provisioning."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/nfs.py:720
-#: cinder/volume/drivers/netapp/nfs.py:916
+#: cinder/volume/drivers/netapp/nfs.py:920
 msgid "No vserver set in config. SSC will be disabled."
 msgstr ""
 
@@ -7821,87 +7847,87 @@ msgid ""
 "                    dest %(dest_path)s, vserver %(vserver)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:911
+#: cinder/volume/drivers/netapp/nfs.py:915
 msgid "No cluster ssc stats found. Wait for next volume stats update."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:932
+#: cinder/volume/drivers/netapp/nfs.py:936
 msgid "No shares found hence skipping ssc refresh."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:969
-#: cinder/volume/drivers/netapp/nfs.py:1194
+#: cinder/volume/drivers/netapp/nfs.py:973
+#: cinder/volume/drivers/netapp/nfs.py:1198
 #, python-format
 msgid "Shortlisted del elg files %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:974
-#: cinder/volume/drivers/netapp/nfs.py:1199
+#: cinder/volume/drivers/netapp/nfs.py:978
+#: cinder/volume/drivers/netapp/nfs.py:1203
 #, python-format
 msgid "Getting file usage for %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:979
-#: cinder/volume/drivers/netapp/nfs.py:1204
+#: cinder/volume/drivers/netapp/nfs.py:983
+#: cinder/volume/drivers/netapp/nfs.py:1208
 #, python-format
 msgid "file-usage for path %(path)s is %(bytes)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:996
-#: cinder/volume/drivers/netapp/nfs.py:1241
+#: cinder/volume/drivers/netapp/nfs.py:1000
+#: cinder/volume/drivers/netapp/nfs.py:1245
 #, python-format
 msgid "Share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:998
-#: cinder/volume/drivers/netapp/nfs.py:1243
+#: cinder/volume/drivers/netapp/nfs.py:1002
+#: cinder/volume/drivers/netapp/nfs.py:1247
 #, python-format
 msgid "No share match found for ip %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1029
+#: cinder/volume/drivers/netapp/nfs.py:1033
 #, python-format
 msgid "Found volume %(vol)s for share %(share)s."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1102
+#: cinder/volume/drivers/netapp/nfs.py:1106
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/nfs.py:1112
+#: cinder/volume/drivers/netapp/nfs.py:1116
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:238
+#: cinder/volume/drivers/netapp/ssc_utils.py:237
 #, python-format
 msgid "Unexpected error while creating ssc vol list. Message - %s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:375
+#: cinder/volume/drivers/netapp/ssc_utils.py:403
 #, python-format
 msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:433
+#: cinder/volume/drivers/netapp/ssc_utils.py:461
 #, python-format
 msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:448
+#: cinder/volume/drivers/netapp/ssc_utils.py:476
 msgid "Backend not a VolumeDriver."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:450
+#: cinder/volume/drivers/netapp/ssc_utils.py:478
 msgid "Backend server not NaServer."
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:453
+#: cinder/volume/drivers/netapp/ssc_utils.py:481
 msgid "ssc job in progress. Returning... "
 msgstr ""
 
-#: cinder/volume/drivers/netapp/ssc_utils.py:462
+#: cinder/volume/drivers/netapp/ssc_utils.py:490
 msgid "refresh stale ssc job in progress. Returning... "
 msgstr ""
 
@@ -7924,79 +7950,85 @@ msgstr ""
 msgid "Requires an NaServer instance."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:86
+#: cinder/volume/drivers/nexenta/iscsi.py:87
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:125
+#: cinder/volume/drivers/nexenta/iscsi.py:126
 #, python-format
 msgid "Extending volume: %(id)s New size: %(size)s GB"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:139
+#: cinder/volume/drivers/nexenta/iscsi.py:140
 #, python-format
-msgid "Volume %s does not exist, it seems it was already deleted"
+msgid "Volume %s does not exist, it seems it was already deleted."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:154
+#: cinder/volume/drivers/nexenta/iscsi.py:155
 #, python-format
 msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:163
+#: cinder/volume/drivers/nexenta/iscsi.py:164
 msgid "Executing zfs send/recv on the appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:165
+#: cinder/volume/drivers/nexenta/iscsi.py:166
 #, python-format
 msgid "zfs send/recv done, new volume %s created"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:172
+#: cinder/volume/drivers/nexenta/iscsi.py:173
 #, python-format
 msgid "Failed to delete temp snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:181
+#: cinder/volume/drivers/nexenta/iscsi.py:182
 #, python-format
 msgid "Failed to delete zfs recv snapshot %(volume)s@%(snapshot)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:336
+#: cinder/volume/drivers/nexenta/iscsi.py:218
+#: cinder/volume/drivers/nexenta/nfs.py:258
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:339
 #: cinder/volume/drivers/windows/windows_utils.py:232
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:346
+#: cinder/volume/drivers/nexenta/iscsi.py:349
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:358
+#: cinder/volume/drivers/nexenta/iscsi.py:361
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:368
+#: cinder/volume/drivers/nexenta/iscsi.py:371
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:378
+#: cinder/volume/drivers/nexenta/iscsi.py:381
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/iscsi.py:411
+#: cinder/volume/drivers/nexenta/iscsi.py:414
 #, 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:419
+#: cinder/volume/drivers/nexenta/iscsi.py:422
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
@@ -8026,57 +8058,62 @@ msgstr ""
 msgid "Got response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:85
+#: cinder/volume/drivers/nexenta/nfs.py:88
 #, python-format
 msgid "Volume %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:89
+#: cinder/volume/drivers/nexenta/nfs.py:92
 #, python-format
 msgid "Folder %s does not exist in Nexenta Store appliance"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:114
+#: cinder/volume/drivers/nexenta/nfs.py:117
 #, python-format
 msgid "Creating folder on Nexenta Store %s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:146
+#: cinder/volume/drivers/nexenta/nfs.py:149
 #, python-format
 msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:176
+#: cinder/volume/drivers/nexenta/nfs.py:179
 #, python-format
 msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:199
+#: cinder/volume/drivers/nexenta/nfs.py:202
 #, python-format
 msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:204
+#: cinder/volume/drivers/nexenta/nfs.py:207
 #, python-format
 msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:275
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:292
 #, python-format
 msgid "Creating regular file: %s.This may take some time."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:286
+#: cinder/volume/drivers/nexenta/nfs.py:303
 #, python-format
 msgid "Regular file: %s created."
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:338
+#: cinder/volume/drivers/nexenta/nfs.py:355
 #, python-format
 msgid "Sharing folder %s on Nexenta Store"
 msgstr ""
 
-#: cinder/volume/drivers/nexenta/nfs.py:366
+#: cinder/volume/drivers/nexenta/nfs.py:383
 #, python-format
 msgid "Shares loaded: %s"
 msgstr ""
@@ -8318,214 +8355,214 @@ msgstr ""
 msgid "Error in %(attr)s. Detailed error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:105
+#: cinder/volume/drivers/vmware/vmdk.py:108
 #, python-format
 msgid "Returning spec value %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:108
+#: cinder/volume/drivers/vmware/vmdk.py:111
 #, python-format
 msgid "Invalid spec value: %s specified."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:111
+#: cinder/volume/drivers/vmware/vmdk.py:114
 #, python-format
 msgid "Returning default spec value: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:162
+#: cinder/volume/drivers/vmware/vmdk.py:165
 #, python-format
 msgid "%s not set."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:167
+#: cinder/volume/drivers/vmware/vmdk.py:170
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:212
+#: cinder/volume/drivers/vmware/vmdk.py:215
 msgid "Backing not available, no operation to be performed."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:254
+#: cinder/volume/drivers/vmware/vmdk.py:257
 #, python-format
 msgid ""
 "Unable to pick datastore to accomodate %(size)s bytes from the "
 "datastores: %(dss)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:261
+#: cinder/volume/drivers/vmware/vmdk.py:264
 #, python-format
 msgid "Selected datastore: %s for the volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:341
+#: cinder/volume/drivers/vmware/vmdk.py:344
 #, 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:351
+#: cinder/volume/drivers/vmware/vmdk.py:354
 #, python-format
 msgid "Unable to create volume: %s in the inventory."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:370
+#: cinder/volume/drivers/vmware/vmdk.py:373
 #, python-format
 msgid "The instance: %s for which initialize connection is called, exists."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:377
+#: cinder/volume/drivers/vmware/vmdk.py:380
 #, python-format
 msgid "There is no backing for the volume: %s. Need to create one."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:385
+#: cinder/volume/drivers/vmware/vmdk.py:388
 msgid "The instance for which initialize connection is called, does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:390
+#: cinder/volume/drivers/vmware/vmdk.py:393
 #, python-format
 msgid "Trying to boot from an empty volume: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:399
+#: cinder/volume/drivers/vmware/vmdk.py:402
 #, python-format
 msgid ""
 "Returning connection_info: %(info)s for volume: %(volume)s with "
 "connector: %(connector)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:447
+#: cinder/volume/drivers/vmware/vmdk.py:450
 #, python-format
 msgid "Snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:452
+#: cinder/volume/drivers/vmware/vmdk.py:455
 #, python-format
 msgid "There is no backing, so will not create snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:457
+#: cinder/volume/drivers/vmware/vmdk.py:460
 #, python-format
 msgid "Successfully created snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:478
+#: cinder/volume/drivers/vmware/vmdk.py:481
 #, python-format
 msgid "Delete snapshot of volume not supported in state: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:483
+#: cinder/volume/drivers/vmware/vmdk.py:486
 #, python-format
 msgid "There is no backing, and so there is no snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:487
+#: cinder/volume/drivers/vmware/vmdk.py:490
 #, python-format
 msgid "Successfully deleted snapshot: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:515
+#: cinder/volume/drivers/vmware/vmdk.py:518
 #, python-format
 msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:532
+#: cinder/volume/drivers/vmware/vmdk.py:535
 #, 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:562
+#: cinder/volume/drivers/vmware/vmdk.py:565
 #, 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:571
-#: cinder/volume/drivers/vmware/vmdk.py:839
+#: cinder/volume/drivers/vmware/vmdk.py:574
+#: cinder/volume/drivers/vmware/vmdk.py:842
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshoted volume: %(snap)s. Not "
 "creating any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:607
+#: cinder/volume/drivers/vmware/vmdk.py:610
 #, python-format
 msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:624
+#: cinder/volume/drivers/vmware/vmdk.py:627
 #, python-format
 msgid "Copy glance image: %s to create new volume."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:651
+#: cinder/volume/drivers/vmware/vmdk.py:654
 #, python-format
 msgid "Fetching glance image: %(id)s to server: %(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:659
+#: cinder/volume/drivers/vmware/vmdk.py:662
 #, python-format
 msgid "Done copying image: %(id)s to volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:662
+#: cinder/volume/drivers/vmware/vmdk.py:665
 #, python-format
 msgid ""
 "Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
 "%(back)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:686
+#: cinder/volume/drivers/vmware/vmdk.py:689
 msgid "Upload to glance of attached volume is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:690
+#: cinder/volume/drivers/vmware/vmdk.py:693
 #, python-format
 msgid "Copy Volume: %s to new image."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:695
+#: cinder/volume/drivers/vmware/vmdk.py:698
 #, python-format
 msgid "Backing not found, creating for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:726
+#: cinder/volume/drivers/vmware/vmdk.py:729
 #, python-format
 msgid "Done copying volume %(vol)s to a new image %(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:779
+#: cinder/volume/drivers/vmware/vmdk.py:782
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:818
+#: cinder/volume/drivers/vmware/vmdk.py:821
 #: cinder/volume/drivers/vmware/volumeops.py:595
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:831
+#: cinder/volume/drivers/vmware/vmdk.py:834
 #, python-format
 msgid ""
 "There is no backing for the snapshoted volume: %(snap)s. Not creating any"
 " backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:867
+#: cinder/volume/drivers/vmware/vmdk.py:870
 #, 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:875
+#: cinder/volume/drivers/vmware/vmdk.py:878
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -9831,3 +9868,34 @@ msgstr ""
 #~ msgid "new str info is %s."
 #~ msgstr ""
 
+#~ msgid "Failed to create iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume %(volume_id)s."
+#~ msgstr ""
+
+#~ msgid "rtstool is not installed correctly"
+#~ msgstr ""
+
+#~ msgid "Creating iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to create iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failed to create iser target for "
+#~ "volume id:%(vol_id)s. Please ensure your "
+#~ "tgtd config file contains 'include "
+#~ "%(volumes_dir)s/*'"
+#~ msgstr ""
+
+#~ msgid "Removing iser_target for: %s"
+#~ msgstr ""
+
+#~ msgid "Failed to remove iser target for volume id:%(vol_id)s: %(e)s"
+#~ msgstr ""
+
+#~ msgid "Volume %s does not exist, it seems it was already deleted"
+#~ msgstr ""
+