<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">I commented on this in your patch (<a href="https://review.openstack.org/#/c/161837/">https://review.openstack.org/#/c/161837/</a>) and posted a patch to help you along - <a href="https://review.openstack.org/#/c/161945/">https://review.openstack.org/#/c/161945/</a>.  This patch will make "create_snapshot" and "create_volume_from_snapshot" method use snapshot objects.  By using snapshot objects in both methods, you could now update the driver to use snapshot objects, instead of the workaround you had originally posted.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Regards,</div><div class="gmail_default" style="font-family:verdana,sans-serif">Thang</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 5, 2015 at 8:10 PM, Asselin, Ramy <span dir="ltr"><<a href="mailto:ramy.asselin@hp.com" target="_blank">ramy.asselin@hp.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Marcus,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Don’t turn off ci, because then you could miss another regression.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Instead, simply exclude that test case:
<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">e.g.
<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">export DEVSTACK_GATE_TEMPEST_REGEX="^(?=.*tempest.api.volume)(?!.*test_snapshots_actions).*"<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Ramy<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> Marcus Vinícius Ramires do Nascimento [mailto:<a href="mailto:marcusvrn@gmail.com" target="_blank">marcusvrn@gmail.com</a>]
<br>
<b>Sent:</b> Wednesday, March 04, 2015 1:29 PM<br>
<b>To:</b> <a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>; Announcements for third party CI operators.<br>
<b>Subject:</b> [openstack-dev] [cinder] [Third-party-announce] Cinder Merged patch broke HDS driver<u></u><u></u></span></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">Hi folks,<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">This weekend, the patch "<b><span style="font-size:9.0pt;color:black">Snapshot and volume objects</span></b>" (<a href="https://review.openstack.org/#/c/133566" target="_blank">https://review.openstack.org/#/c/133566</a>) was merged and this one broke
 our HDS HBSD driver and the respective CI.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">When CI tries to run tempest.api.volume.admin.test_snapshots_actions the following error is shown:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 ERROR oslo_messaging.rpc.dispatcher [req-c941792b-963f-4a7d-a6ac-9f1d9f823fd1 915289d113dd4f9db2f2a792c18b3564 984bc8d228c8497689dde60dc2b8f300] Exception during messag<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">e handling: '<class 'cinder.objects.snapshot.Snapshot'>' object has no attribute 'snapshot_metadata'<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher Traceback (most recent call last):<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/usr/local/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 142, in _dispatch_and_reply<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     executor_callback))<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/usr/local/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 186, in _dispatch<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     executor_callback)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/usr/local/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 130, in _do_dispatch<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     result = func(ctxt, **new_args)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/usr/local/lib/python2.7/dist-packages/osprofiler/profiler.py", line 105, in wrapper<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     return f(*args, **kwargs)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/manager.py", line 156, in lso_inner1<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     return lso_inner2(inst, context, snapshot, **kwargs)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/usr/local/lib/python2.7/dist-packages/oslo_concurrency/lockutils.py", line 431, in inner<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     return f(*args, **kwargs)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/manager.py", line 155, in lso_inner2<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     return f(*_args, **_kwargs)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/manager.py", line 635, in delete_snapshot<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     snapshot.save()<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 82, in __exit__<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     six.reraise(self.type_, self.value, self.tb)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/manager.py", line 625, in delete_snapshot<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     self.driver.delete_snapshot(snapshot)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/usr/local/lib/python2.7/dist-packages/osprofiler/profiler.py", line 105, in wrapper<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     return f(*args, **kwargs)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/drivers/hitachi/hbsd_iscsi.py", line 314, in delete_snapshot<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     self.common.delete_snapshot(snapshot)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/drivers/hitachi/hbsd_common.py", line 635, in delete_snapshot<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     is_vvol = self.get_snapshot_is_vvol(snapshot)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/drivers/hitachi/hbsd_common.py", line 189, in get_snapshot_is_vvol<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     return self.get_is_vvol(snapshot, 'snapshot_metadata')<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/drivers/hitachi/hbsd_common.py", line 183, in get_is_vvol<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     return self.get_value(obj, name, 'type') == 'V-VOL'<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/volume/drivers/hitachi/hbsd_common.py", line 176, in get_value<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     if obj.get(name):<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/cinder/cinder/objects/base.py", line 615, in get<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher     self.__class__, key))<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher AttributeError: '<class 'cinder.objects.snapshot.Snapshot'><b>' object has no attribute 'snapshot_metadata'</b><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2015-03-04 14:00:34.368 TRACE oslo_messaging.rpc.dispatcher<u></u><u></u></p>
</div>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Before merging the patch, the CI ran successfully on Patchset,38 (<a href="http://177.84.241.119:10000/66/133566/38/silent/hitachi-hbsd-iscsi/17ee25e/" target="_blank">http://177.84.241.119:10000/66/133566/38/silent/hitachi-hbsd-iscsi/17ee25e/</a>) which
 already changed the files involved in this bug. Is it possible to CI run the tempest tests on Devstack with no patch (triggered by Zuul) applied? The CI didn't run the latest Patchset (41), because we had an infrastructure problem (power failures) during the
 weekend and the beginning of the week. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">I checked the patch merged and I saw that it has changed a lot of snapshots files. In some files the "snapshot_metadata" was removed and replaced to "metadata". I think the best approach is to fix the driver, but until the bug is not fixed
 and reviewed, the Cinder CI will be offline. Could you guys give an extra priority for review this bug fix when I submit the patch, once it was working (the CI was in checking mode) before the patch merged?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Regards,<u></u><u></u></p>
</div>
<p class="MsoNormal">-- <u></u><u></u></p>
<div>
<div>
<div>
<p class="MsoNormal"><b>Marcus Vinícius Ramires do Nascimento</b><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><a href="mailto:marcusvrn@gmail.com" target="_blank">marcusvrn@gmail.com</a><u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

<br>__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br></blockquote></div><br></div>