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.