<div dir="ltr"><p style="font-size:12.8px"><font color="#000000">Thanks a lot for bringing up this theme! I'm interested in working on o</font><span style="font-size:12.8px"><font color="#000000">nline data migration in Mitaka.</font></span></p><p style="font-size:12.8px"><font color="#a64d79">3.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">      </span><u></u>Database migration<u></u><u></u></font></p><p style="font-size:12.8px;margin-left:1in"><font color="#a64d79"><u></u>a.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">      </span><u></u>Online schema migration was done in Liberty release, any work left to do?<u></u><u></u></font></p><p style="margin-left:1in"><font color="#000000" style="font-size:12.8px">The work here is finished. The only thing is that I'm aware of is some extra tests </font><font color="#000000"><span style="font-size:12.8px"><a href="https://review.openstack.org/#/c/220091/">https://review.openstack.org/#/c/220091/</a></span></font><span style="font-size:12.8px;color:rgb(0,0,0)">. But this needs some Alembic changes. All main functionality is implemented.</span></p><p style="font-size:12.8px;margin-left:1in"><font color="#a64d79"><u></u>b.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">      </span><u></u>TODO: Online data migration to be introduced in Mitaka cycle.<u></u><u></u></font></p><p style="font-size:12.8px;margin-left:1.5in"><font color="#a64d79"><u></u><span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">                                                    </span>i.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">     </span><u></u>Online data migration can be done during normal operation on the data.<u></u><u></u></font></p><p style="font-size:12.8px;margin-left:1.5in"><font color="#a64d79"><u></u><span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">                                                   </span>ii.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">     </span><u></u>There should be also the script to invoke the data migration in the background.<u></u><u></u></font></p><p style="font-size:12.8px;margin-left:1in"><font color="#a64d79"><u></u>c.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">      </span><u></u>Currently the contract phase is doing the data migration. But since the contract phase should be run offline, we should move the data migration to preceding step. Also the contract phase should be blocked if there is still relevant data in removed entities.<u></u><u></u></font></p><p style="font-size:12.8px;margin-left:1.5in"><font color="#a64d79"><u></u><span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">                                                    </span>i.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">     </span><u></u>Contract phase can be executed online, if there is all new code running in setup.<u></u><u></u></font></p><p style="font-size:12.8px;margin-left:1in"><font color="#a64d79"><u></u>d.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">      </span><u></u>The other strategy is to not drop tables, alter names or remove the columns from the DB – what’s in, it’s in. We should put more attention on code reviews, merge only additive changes and avoid questionable DB modification.<u></u><u></u></font></p><p style="font-size:12.8px;margin-left:1in">Unfortunately sometimes we may need such changes, despite we always tried to avoid it. As plugins were moved out of Neutron it can be easier now, but I'm still not sure we can have restriction. </p><p style="font-size:12.8px;margin-left:1in"><font color="#a64d79"><u></u>e.<span style="font-stretch:normal;font-size:7pt;font-family:'Times New Roman'">      </span><u></u>The Neutron server should be updated first, in order to do data translation between old format into new schema. When doing this, we can be sure that old data would not be inserted into old DB structures.</font></p></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 14, 2015 at 9:27 PM, Dan Smith <span dir="ltr"><<a href="mailto:dms@danplanet.com" target="_blank">dms@danplanet.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">> I would like to gather all upgrade activities in Neutron in one place,<br>
> in order to summarizes the current status and future activities on<br>
> rolling upgrades in Mitaka.<br>
<br>
</span>Glad to see this work really picking up steam in other projects!<br>
<span class=""><br>
> b.      TODO: To have the rolling upgrade we have to implement the RPC<br>
> version pinning in conf.<br>
><br>
>         i.     I’m not a big<br>
>         fan of this solution, but we can work out better idea if needed.<br>
<br>
</span>I'll just point to this:<br>
<br>
  <a href="https://review.openstack.org/#/c/233289/" rel="noreferrer" target="_blank">https://review.openstack.org/#/c/233289/</a><br>
<br>
and if you go check the logs for the partial-ncpu job, you'll see<br>
something like this:<br>
<br>
  nova.compute.rpcapi  Automatically selected compute RPC version 4.5<br>
from minimum service version 2<br>
<br>
I think that some amount of RPC pinning is probably going to be required<br>
for most people in most places, given our current model. But I assume<br>
the concern is around requiring this to be a manual task the operators<br>
have to manage. The above patch is the first step towards nova removing<br>
this as something the operators have to know anything about.<br>
<br>
--Dan<br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Regards,<div>Ann Kamyshnikova</div><div>Mirantis, Inc</div></div></div>
</div>