I can't use a cursor, it has to happen in one request. I tried using a sharded counter to provide an estimation of ranking, but that has proven unsuccessful.
On Thu, Apr 8, 2010 at 11:55 PM, Tim Hoffman <zutes...@gmail.com> wrote: > Hi > > You will need to use a cursor combined with a keys_only query (for > efficiency) and keep > resubmitting the cursor until you get all the results. > > If you plan to do this in appengine process rather than via the > remote_api you will probably need to use a chain of tasks > to achieve the result if you have a lot of entities. > > In python it looks something like the following (I don't do any work > with java on app engine) > > def count(query): > i = 0 > while True: > result = query.fetch(1000) > i = i + len(result) > if len(result) < 1000: > break > cursor = query.cursor() > query.with_cursor(cursor) > return i > > myquery = mymodels.MyModel.all(keys_only=True) > > x = count(myquery) > > Hope this helps > > Rgds > > T > > > On Apr 9, 7:36 am, Patrick Twohig <patr...@namazustudios.com> wrote: > > I'm trying to figure out a way to count entities matching a certain > > criteria. I was thinking of doing a key-only query and using > > PreparedQuery.countEntities() (Java). However, when I do that, it always > > returns a value no higher than 1000. Is there a way to get an accurate > > count of all entities matching a query without having to do something > > like.... > > > > int count = datastore.prepare( query.setKeysOnly() > > ).asList(FetchOptions.Builder.limit(Integer.MAX_VALUE)).size() ? > > > > Thanks, > > Patrick. > > > > -- > > Patrick H. Twohig. > > > > Namazu Studios > > P.O. Box 34161 > > San Diego, CA 92163-4161 > > > > -- > > 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<google-appengine%2bunsubscr...@googlegroups.com> > . > > For more options, visit this group athttp:// > groups.google.com/group/google-appengine?hl=en. > > -- > 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<google-appengine%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/google-appengine?hl=en. > > -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- 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.