Why can't you push the version 2, start updating the data
but still keep running version 1 until the data update has finished.

That I believe is the normal recommended approach.

Is there something about your new version 2 data model that will break
version 1 ?

T

On Sep 21, 2:29 am, Kyle Baley <k...@baley.org> wrote:
> We've just released the first version of our application and are now
> looking at a problem we've been avoiding until now. Namely, what is
> the best way to upgrade the application to a new version that requires
> changes to the datastore. We're looking at two options:
>
> 1) Big Bang Upgrade
> We take the application down and run an upgrade process to update all
> entities from version 1 to version 2.
>
> Pros: Easy to maintain; intuitive
> Cons: App has to be taken down for a period of time, which will
> increase as time passes and more data is added to the datastore
> (potentially hitting the limit for long-running processes eventually)
> Question: What's a good way to take the app offline?
>
> 2) Version Entities Individually
> Each entity has a version number and we have a series of commands,
> each one responsible for upgrading an entity from one version to the
> next. As we request entities, we check to see if it's the latest
> version. If not, we run each necessary upgrade command in sequence
> until it is the latest version.
>
> Pros: No need to take the app offline; provides flexibility on whether
> to upgrade everything at once or piecemeal
> Cons: Not as intuitive; entities with different versions in the
> datastore (if that matters)
>
> What do other people do to upgrade their datastore for a live
> application?

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appeng...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to