I find it most convenient to make the 'manageable chunk' one single email.
It's a map/reduce-type problem. You want to map the "enqueue email
task" across every user. The simplest solution is to iterate across
the users and enqueue a task for each. You can do it in batches of
100 (actually QueueConstants.maxTasksPerAdd()); I find the Guava
Lists.partition() and Lists.transform() methods really handy here.
With a keys-only query you can probably iterate across 100k records in
the ~60s before a query times out. If not, you can enqueue the
mapping process. You could even use the google-provided MapReduce
toolkit.
Ultimately you end up with a zillion "email this user" tasks which you
can run as parallel as you wish.
Jeff
> --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To view this discussion on the web visit
>
https://groups.google.com/d/msg/google-appengine/-/Oah95qLypI8J.
>
> To post to this group, send email to
google-a...@googlegroups.com.
> To unsubscribe from this group, send email to
>
google-appengi...@googlegroups.com.
> For more options, visit this group at
>
http://groups.google.com/group/google-appengine?hl=en.