31 Dec 2008

Gaebar Beta 2 Release

I'm happy to announce that there's quite an important update to Gaebar that brings with it some essential bug fixes and should help shave quite a bit of time off of your restores.

I've also created a new project called gaebar-gaed-skeleton on GitHub that gives you an empty Google App Engine Django (Helper) project with Gaebar pre-installed to start you off when creating your own applications.

Here's a list of changes in Beta 2:

  • Fixed: All required properties, including references should work correctly now. Required properties would raise an exception during the restore process in Beta 1.
  • Refactored: We are no longer using actual entity references (which was unnecessary) but keys to create reference properties. This means that creation order of references doesn’t matter any more (thanks to Pete Koomen who explained all this to me in an email ages ago; it only just sunk in, Pete!)
  • New feature: Due to above changes, the restore process is now one-pass, not two. This means that restores should now take considerably less time.
  • Refactored: I moved the functional tests out to their own GitHub module since they were being shared by both the gaebar-gaed and gaebar-aep test apps. This will make maintaining them much easier.

I want to thank Jonathan Ricketson for alerting me in the comments earlier today that the Beta 1 release was not handling required properties correctly (thanks, Jonathan). I also want to thank Thomas Bohmbach, Jr. for providing feedback and helping me test.

You can download Gaebar Beta 2 and the other Gaebar projects from my GitHub account.

If you'd like to learn more about Gaebar, please see my original announcement, which contains a screencast showing Gaebar (albeit Beta 1) in use.

As always, I value your bug reports, comments, and suggestions so please feel free to leave a comment and let me know of your experiences with Gaebar.

Creative Commons LicenseThe Gaebar Beta 2 Released article by Aral Balkan, unless otherwise expressly stated, is licensed under a Creative Commons Attribution-Noncommercial 2.0 UK: England License.

Add Your Comment

Spam Protection by WP-SpamFree

Gaebar Beta 2 Released

  1. [...] Update: Beta 2 Released! See the Gaebar Beta 2 announcement. [...]

    Aral Balkan - Google App Engine Backup and Restore (Gaebar) released
  2. Thanks for making this available – i like how the GaeBar logo is a pink engine, nice touch. :)

    Bobby
  3. In your comment on Dion’s site (http://almaer.com/blog/keys-to-the-google-app-engine) you mention that GAEBAR is a generic solution for AppEngine backup… but only for Django apps right?

    Andy
  4. Just a quick note that I posted a github “pull request” last week with a small patch to Gaebar that fixes a bug with unicode key_names (and key_names with odd numbers of ‘\’ in them – don’t ask :)

    http://github.com/gumptionthomas/gaebar/commit/98415f1f988139987b71522e2f97ccd23ba8a68e

    Thomas Bohmbach, Jr.
  5. Hi Thomas,

    Thank you so much for sharing your patches — they’re awesome.

    I just skimmed through your email (been working away at something else) and I’m going to pull them into my repository as soon as I can. :)

    Aral
  6. @Andy: yes, Gaebar is (currently) only for Django apps. I’m accepting patches though so if anyone wants to attempt a webapp version… ;)

    Aral
  7. Please read the following GAE feature request:
    http://code.google.com/p/googleappengine/issues/detail?id=1078
    Share your thoughts and consider to support (star) it.

    Alexander Vasiljev
  8. So .. how do you back up from a dev site and restore to a dev site (e.g. for testing)? Do you run two GAE apps at once? With two separate trees? Do you have one tree and run two dev_appserver.py instances with different –port args?

    Also, is it possible or easy to pull out the client portion and make a command-line tool to dodge the two-sandbox case? I saw the heart of the matter in views.py (backup_rows), but it did not look easy to pull apart.

    Dan