<div dir="ltr">Hi!<div><br></div><div>Actually, I have already filed cancel of LiveMigration with using taskflow [0].</div><div>But my approach to blueprint was not so good at that time.</div><div>So, I rewrote this blueprint from also point of russelb.</div>
<div>I want to repush and wanted to approved.</div><div><br></div><div>If you have any suggestions, ideas etc...</div><div>I appreciate it :)</div><div><br></div><div>Sincerely, Haruka Tanizawa</div><div><br></div><div><br>
</div><div>[0] <a href="https://blueprints.launchpad.net/nova/+spec/feature-of-cancel">https://blueprints.launchpad.net/nova/+spec/feature-of-cancel</a></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">
2013/12/17 Yaguang Tang <span dir="ltr"><<a href="mailto:yaguang.tang@canonical.com" target="_blank">yaguang.tang@canonical.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">could we use <a href="https://wiki.openstack.org/wiki/TaskFlow" target="_blank">Taskflow</a> to manage task state and resource for this kind of tasks in Nova? Cinder has been an pilot to use Taskflow for volume backup tasks. anyone interested in this suggestion or has done some research to improve the live migration workflow?   </div>

<div class="gmail_extra"><div><div class="h5"><br><br><div class="gmail_quote">2013/12/17 Vladik Romanovsky <span dir="ltr"><<a href="mailto:vladik.romanovsky@enovance.com" target="_blank">vladik.romanovsky@enovance.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I would block it in the API or have the API cancelling the migration first.<br>
I don't see a reason why to start an operation that is meant to fail, which also has a complex chain of event, following it failure.<br>
<br>
Regardless of the above, I think that the suggested exception handling is needed in any case.<br>
<br>
<br>
Vladik<br>
<div><div><br>
----- Original Message -----<br>
> From: "Loganathan Parthipan" <<a href="mailto:parthipan@hp.com" target="_blank">parthipan@hp.com</a>><br>
> To: "OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>><br>
> Sent: Monday, 16 December, 2013 8:25:09 AM<br>
> Subject: Re: [openstack-dev] [Nova][libvirt]when deleting instance which is in migrating state, instance files can be<br>
> stay in destination node forever<br>
><br>
><br>
><br>
> Isn’t just handling the exception instance_not_found enough? By this time<br>
> source would’ve been cleaned up. Destination VM resources will get cleaned<br>
> up by the periodic task since the VM is not associated with this host. Am I<br>
> missing something here?<br>
><br>
><br>
><br>
><br>
><br>
><br>
> From: 王瘢雹宏 [mailto:<a href="mailto:w.wanghong1@gmail.com" target="_blank">w.wanghong1@gmail.com</a>]<br>
> Sent: 16 December 2013 11:32<br>
> To: <a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a><br>
> Subject: [openstack-dev] [Nova][libvirt]when deleting instance which is in<br>
> migrating state, instance files can be stay in destination node forever<br>
><br>
><br>
><br>
><br>
><br>
> Hi all.<br>
><br>
><br>
> When I try to fix a bug: <a href="https://bugs.launchpad.net/nova/+bug/1242961" target="_blank">https://bugs.launchpad.net/nova/+bug/1242961</a> ,<br>
><br>
><br>
> I get a trouble.<br>
><br>
><br>
><br>
><br>
><br>
> To reproduce the bug is very easy. Live migrate a vm in block_migration mode,<br>
><br>
><br>
> and then delelte the vm immediately.<br>
><br>
><br>
><br>
><br>
><br>
> The reason of this bug is as follow:<br>
><br>
><br>
> 1. Because live migrate costs more time, so the vm will be deleted<br>
> sucessfully<br>
><br>
><br>
> before live migrate complete. And then, we will get an exception while live<br>
><br>
><br>
> migrating.<br>
><br>
><br>
> 2. After live migrate failed, we start to rollback. But, in the rollback<br>
> method<br>
><br>
><br>
> we will get or modify the info of vm from db. Because the vm has been deleted<br>
><br>
><br>
> already, so we will get instance_not_found exception and rollback will be<br>
><br>
><br>
> faild too.<br>
><br>
><br>
><br>
><br>
><br>
> I have two ways to fix the bug:<br>
><br>
><br>
> i)Add check in nova-api. When try to delete a vm, we return an error message<br>
> if<br>
><br>
><br>
> the vm_state is LIVE_MIGRATING. This way is very simple, but need to<br>
> carefully<br>
><br>
><br>
> consider. I have found a related discussion:<br>
><br>
><br>
> <a href="http://lists.openstack.org/pipermail/openstack-dev/2013-October/017454.html" target="_blank">http://lists.openstack.org/pipermail/openstack-dev/2013-October/017454.html</a> ,<br>
> but<br>
><br>
><br>
> it has no result in the discussion.<br>
><br>
><br>
> ii)Before live migrate we get all the data needed by rollback method, and add<br>
> a<br>
><br>
><br>
> new rollback method. The new method will clean up resources at destination<br>
> based<br>
><br>
><br>
> on the above data(The resouces at source has been already cleaned up by<br>
><br>
><br>
> deleting).<br>
><br>
><br>
><br>
><br>
><br>
> I have no idea whitch one I should choose. Or, any other ideas?:)<br>
><br>
><br>
><br>
><br>
><br>
> Regards,<br>
><br>
><br>
> wanghong<br>
><br>
</div></div>> _______________________________________________<br>
> OpenStack-dev mailing list<br>
> <a href="mailto:OpenStack-dev@lists.openstack.org" target="_blank">OpenStack-dev@lists.openstack.org</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>
<br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org" target="_blank">OpenStack-dev@lists.openstack.org</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>
</blockquote></div><br><br clear="all"><div><br></div></div></div><span class="HOEnZb"><font color="#888888">-- <br><div dir="ltr"><div style="font-size:small;font-family:arial">Tang Yaguang</div><div style="font-size:small;font-family:arial">

<br></div><div style="font-size:small;font-family:arial">Canonical Ltd. | <a href="http://www.ubuntu.com/" target="_blank">www.ubuntu.com</a> | <a href="http://www.canonical.com/" target="_blank">www.canonical.com</a></div>

<div style="font-size:small;font-family:arial">Mobile:  <a href="tel:%2B86%20152%201094%206968" value="+8615210946968" target="_blank">+86 152 1094 6968</a></div><div style="font-size:small;font-family:arial">gpg key: 0x187F664F</div>
<div style="font-size:small;font-family:arial">
 </div></div>
</font></span></div>
<br>_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</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>