On Thursday, January 29, 2015 at 11:40 AM, Fischer, Matt wrote:
>  
> From: Morgan Fainberg <morgan.fainb...@gmail.com 
> (mailto:morgan.fainb...@gmail.com)>
> Date: Thursday, January 29, 2015 at 12:26 PM
> To: openstack-operators <openstack-operators@lists.openstack.org 
> (mailto:openstack-operators@lists.openstack.org)>
> Subject: [Openstack-operators] [all] SQL Schema Downgrades: A Good Idea?
>  
> >From an operator perspective I wanted to get input on the SQL Schema 
> >Downgrades.  
> >
> >Today most projects (all?) provide a way to downgrade the SQL Schemas after 
> >you’ve upgraded. Example would be moving from Juno to Kilo and then back to 
> >Juno. There are some odd concepts >when handling a SQL migration downgrade 
> >specifically around the state of the data. A downgrade, in many cases, 
> >causes permanent and irrevocable data loss. When phrased like that (and 
> >>dusting off my deployer/operator hat) I would be hesitant to run a 
> >downgrade in any production, stagings, or even QA environment.
> >
> >In light of what a downgrade actually means I would like to get the views of 
> >the operators on SQL Migration Downgrades:
> >
> >1) Would you actually perform a programatic downgrade via the cli tools or 
> >would you just do a restore-to-last-known-good-before-upgrade (e.g. from a 
> >DB dump)?
> >2) Would you trust the data after a programatic downgrade or would the data 
> >only really be trustworthy if from a restore? Specifically the new code 
> >*could* be relying on new data structures and >a downgrade could result in 
> >weird states of services.
> >
> >I’m looking at the expectation that a downgrade is possible. Each time I 
> >look at the downgrades I feel that it doesn’t make sense to ever really 
> >perform a downgrade outside of a development >environment. The potential for 
> >permanent loss of data / inconsistent data leads me to believe the downgrade 
> >is a flawed design. Input from the operators on real-world cases would be 
> >great to >have.
> >
> >This is an operator specific set of questions related to a post I made to 
> >the OpenStack development mailing list: 
> >http://lists.openstack.org/pipermail/openstack-dev/2015-January/055586.html
> >
> >Cheers,
> >Morgan  
>  
>  
>  
> When moving major releases, we  backup our databases and shutdown most of the 
> cluster so that portion of the cluster is still “good”. We then upgrade one 
> node completely, validate it, then join the rest of the nodes back in. If it 
> goes horribly wrong at that point we’d restore from backup. The main reasons 
> for me are two fold. First, rightly or wrongly, I assume that downgrades are 
> not well tested and rarely used by anyone. We certainly never test it during 
> our upgrade planning. Secondly, until I’m sure that the upgrade worked well, 
> I’d rather just go back to a clean state than rely on a downgrade just 
> because I know that state is 100% functional without further validation. 
> Especially if I’m in an outage window I don’t have time to mess around with a 
> downgrade and hope it works. I’ll kill the bad node and rebuild it, either 
> just restarting the old DB or restoring if needed. The tl;dr here is why take 
> the chance that the downgrade works when you have saner alternatives.

Yeah, this is the general approach we perform as well, and few other shops I 
know.  
>  
>  
> (please excuse the cruft below)  
>  
>  
>  
>  
>  
> This E-mail and any of its attachments may contain Time Warner Cable 
> proprietary information, which is privileged, confidential, or subject to 
> copyright belonging to Time Warner Cable. This E-mail is intended solely for 
> the use of the individual or entity to which it is addressed. If you are not 
> the intended recipient of this E-mail, you are hereby notified that any 
> dissemination, distribution, copying, or action taken in relation to the 
> contents of and attachments to this E-mail is strictly prohibited and may be 
> unlawful. If you have received this E-mail in error, please notify the sender 
> immediately and permanently delete the original and any copy of this E-mail 
> and any printout.
> _______________________________________________
> OpenStack-operators mailing list
> OpenStack-operators@lists.openstack.org 
> (mailto:OpenStack-operators@lists.openstack.org)
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
>  
>  


_______________________________________________
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators

Reply via email to