With App Engine Version 1.3.6, released Aug-17-2010, the 1000-item fetch() limit was removed.
Does that mean that ModelClass.all().fetch(limit=99999999999) and [e for e in ModelClass.all()] are equivalent?
If they differ, they may differ in subtle ways. For example, is the number of RPC calls equivalent?
Though the 1000 entity limit was removed from fetch, you still need to provide an explicit upper bound of your own. Of course, if you make this sufficiently large then you’ll retrieve all of your entities.
The iterator approach you proposed above is functionally equivalent (if the limit passed to fetch is big enough to retrieve all entities). However, they do have different performance characteristics. In particular, the iterator fetches a small-ish chunk of entities at once. If you have a large number of entities, then the version using the iterator will make many more RPCs.