don,

my appid is bubblesixapp, it used to work before the 8/18 maintenance
with 200 keys in the datastore.delete(listKey).  Then i lowered it to
100 today and still got the exception, then I lowered it to 5 keys and
it worked.  this mean the latency on datastore.delete is much much
longer now.  I think there is a performance degradation on delete that
no one is detecting.  below is my code.  can you try to insert 1000
objects then try to delete 200 keys at a time.  Do you guys have a
guide line on how 'slow' is normal?  can you please check?  let's not
have any system performance degradation go unnoticed.  thanks.

......
int batchSize = 5;
 DatastoreService datastore =
DatastoreServiceFactory.getDatastoreService();
        com.google.appengine.api.datastore.Query myquery = new
com.google.appengine.api.datastore.Query(className).setKeysOnly();
        myquery.addFilter("vendorID",
com.google.appengine.api.datastore.Query.FilterOperator.EQUAL ,
vendorID);

        List<Key> listKey=new ArrayList<Key>(batchSize);
            int counter=0;
            int fullcounter=0;

              Iterable<Entity> entities=datastore.prepare(myquery).asIterable
();

              for (Entity entity : entities  ) {
                  listKey.add(entity.getKey());
                      counter++;
                      fullcounter++;
                      if (counter==batchSize) {

                              datastore.delete(listKey);
                              counter=0;
                              listKey.clear();
                      }
             }

             datastore.delete(listKey);


On Aug 18, 3:25 pm, Don Schwarz <[email protected]> wrote:
> On Tue, Aug 18, 2009 at 4:28 PM, repairman <[email protected]> wrote:
>
> > guys,
> > after your 8/18 maintenance my datastore.delete(listKey); call now
> > returns the exception below EVERYTIME.  It works fine on local
> > server.   I bet you guys turned write on but forgot to turn on the
> > delete permission after your maintenance.   Can anyone please check?
>
> I'm going to choose to ignore the tone of your post and just assure you that
> this is not the case.
>
> Can you please write a sample program that deletes an entity on GAE
>
> > (not your local dev server)  to see if it works for you?
>
> http://code.google.com/status/appengine/detail/datastore/2009/08/18#a...http://code.google.com/status/appengine/detail/datastore/2009/08/18#a...
>
> What is your app ID and how many datastore keys are you trying to delete at
> once?  Have you tried reducing the number of keys in each call?
>
> Thanks,
> Don
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to