Hi Fernando,
> Congratulations, Aral! That's certainly a nice achievement.
Thanks :)
> How reliable do you consider this method to be? For instance, if
> objects are being created and deleted as the process runs, is there a
> change an object would be missed due to a paging scheme? Or if there
> is some hiccup in the whole client html-reloading process?
Currently, it's been reliable while backing up my app which has about
3000+ rows of data.
I'm currently checking for InternalErrors and retrying three times on
those. Apart from that I haven't had any issues.
One thing that Pete Koomen made me aware of is that the method I'm
using (which uses fetch with an offset) will not scale indefinitely.
This is because the datastore has to actually skip through the records
that you're skipping. What we need is a way to do inequality checks on
ids -- something that I believe the team at Google is working on.
Until that, this is the best/only solution. For me, it represents the
difference between not having backups and having them -- which is a
big one! :)
Once I've decoupled it from my app and released the source, I'll be
very interested in hearing your feedback and how well it works for you
and your apps.
Aral