[google-appengine] Re: Deleting stuff
I'm having the EXACT same problem, and no amount of delay seems to be helping. Has anyone figured this out? On Nov 21, 4:00 pm, Ben Nevile ben.nev...@gmail.com wrote: Hi Chris - thanks for your response. A 2 second delay? Really? I don't think that would help. 1. Another of my apps is serving 100k req / sec. 2. if I delete 100 entities every two seconds it would take me a few months to get through them all. Ben On Nov 21, 11:11 am, Chris Marasti-Georg c.marastige...@gmail.com wrote: How long are you waiting between requests? I add a 2 second delay in the non-gae loop code when I do things like this. On Fri, Nov 21, 2008 at 12:10 PM, Ben Nevile ben.nev...@gmail.com wrote: Greetings fellow GAE dorks, So I'm trying to clean up an existing app. I want to delete all the entities of a certain class. Since there's no automagic way to do this, I made a handler that deletes them a block at a time. Here it is: class DeleteHandler(BaseRequestHandler): def get(self): size = int(self.request.get('size',default_value='10')) touches = Touch.gql('ORDER BY time desc').fetch(size) db.delete(touches) self.response.out.write(ok) Pretty simple. So I called this in a loop for a while, and it started timing out at the query. Hm. Perhaps a problem with the index? I then changed the query to this: touches = Touch.all().fetch(size) So that the first index wasn't involved. This worked for a while, but then started timing out again. Here's the error: Traceback (most recent call last): File /base/python_lib/versions/1/google/appengine/ext/webapp/ __init__.py, line 499, in __call__ handler.get(*groups) File /base/data/home/apps/showmeflow/1.329447312090117530/main.py, line 58, in get most_recent_touches = Touch.all().fetch(size) File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 1377, in fetch raw = self._get_query().Get(limit, offset) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 938, in Get return self._Run(limit, offset)._Next(limit) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 882, in _Run _ToDatastoreError(err) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 1636, in _ToDatastoreError raise errors[err.application_error](err.error_detail) Timeout What's a dork to do? Ben --~--~-~--~~~---~--~~ 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-appengine@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 -~--~~~~--~~--~--~---
[google-appengine] Re: Deleting stuff
Some more information: app_id = twitter2ff offending model = TwitterUser On Dec 16, 1:14 pm, Carter Rabasa carter.rab...@gmail.com wrote: I'm having the EXACT same problem, and no amount of delay seems to be helping. Has anyone figured this out? On Nov 21, 4:00 pm, Ben Nevile ben.nev...@gmail.com wrote: Hi Chris - thanks for your response. A 2 second delay? Really? I don't think that would help. 1. Another of my apps is serving 100k req / sec. 2. if I delete 100 entities every two seconds it would take me a few months to get through them all. Ben On Nov 21, 11:11 am, Chris Marasti-Georg c.marastige...@gmail.com wrote: How long are you waiting between requests? I add a 2 second delay in the non-gae loop code when I do things like this. On Fri, Nov 21, 2008 at 12:10 PM, Ben Nevile ben.nev...@gmail.com wrote: Greetings fellow GAE dorks, So I'm trying to clean up an existing app. I want to delete all the entities of a certain class. Since there's no automagic way to do this, I made a handler that deletes them a block at a time. Here it is: class DeleteHandler(BaseRequestHandler): def get(self): size = int(self.request.get('size',default_value='10')) touches = Touch.gql('ORDER BY time desc').fetch(size) db.delete(touches) self.response.out.write(ok) Pretty simple. So I called this in a loop for a while, and it started timing out at the query. Hm. Perhaps a problem with the index? I then changed the query to this: touches = Touch.all().fetch(size) So that the first index wasn't involved. This worked for a while, but then started timing out again. Here's the error: Traceback (most recent call last): File /base/python_lib/versions/1/google/appengine/ext/webapp/ __init__.py, line 499, in __call__ handler.get(*groups) File /base/data/home/apps/showmeflow/1.329447312090117530/main.py, line 58, in get most_recent_touches = Touch.all().fetch(size) File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 1377, in fetch raw = self._get_query().Get(limit, offset) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 938, in Get return self._Run(limit, offset)._Next(limit) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 882, in _Run _ToDatastoreError(err) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 1636, in _ToDatastoreError raise errors[err.application_error](err.error_detail) Timeout What's a dork to do? Ben --~--~-~--~~~---~--~~ 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-appengine@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 -~--~~~~--~~--~--~---
[google-appengine] Re: Deleting stuff
How long are you waiting between requests? I add a 2 second delay in the non-gae loop code when I do things like this. On Fri, Nov 21, 2008 at 12:10 PM, Ben Nevile [EMAIL PROTECTED] wrote: Greetings fellow GAE dorks, So I'm trying to clean up an existing app. I want to delete all the entities of a certain class. Since there's no automagic way to do this, I made a handler that deletes them a block at a time. Here it is: class DeleteHandler(BaseRequestHandler): def get(self): size = int(self.request.get('size',default_value='10')) touches = Touch.gql('ORDER BY time desc').fetch(size) db.delete(touches) self.response.out.write(ok) Pretty simple. So I called this in a loop for a while, and it started timing out at the query. Hm. Perhaps a problem with the index? I then changed the query to this: touches = Touch.all().fetch(size) So that the first index wasn't involved. This worked for a while, but then started timing out again. Here's the error: Traceback (most recent call last): File /base/python_lib/versions/1/google/appengine/ext/webapp/ __init__.py, line 499, in __call__ handler.get(*groups) File /base/data/home/apps/showmeflow/1.329447312090117530/main.py, line 58, in get most_recent_touches = Touch.all().fetch(size) File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 1377, in fetch raw = self._get_query().Get(limit, offset) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 938, in Get return self._Run(limit, offset)._Next(limit) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 882, in _Run _ToDatastoreError(err) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 1636, in _ToDatastoreError raise errors[err.application_error](err.error_detail) Timeout What's a dork to do? Ben --~--~-~--~~~---~--~~ 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-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Deleting stuff
Hi Chris - thanks for your response. A 2 second delay? Really? I don't think that would help. 1. Another of my apps is serving 100k req / sec. 2. if I delete 100 entities every two seconds it would take me a few months to get through them all. Ben On Nov 21, 11:11 am, Chris Marasti-Georg [EMAIL PROTECTED] wrote: How long are you waiting between requests? I add a 2 second delay in the non-gae loop code when I do things like this. On Fri, Nov 21, 2008 at 12:10 PM, Ben Nevile [EMAIL PROTECTED] wrote: Greetings fellow GAE dorks, So I'm trying to clean up an existing app. I want to delete all the entities of a certain class. Since there's no automagic way to do this, I made a handler that deletes them a block at a time. Here it is: class DeleteHandler(BaseRequestHandler): def get(self): size = int(self.request.get('size',default_value='10')) touches = Touch.gql('ORDER BY time desc').fetch(size) db.delete(touches) self.response.out.write(ok) Pretty simple. So I called this in a loop for a while, and it started timing out at the query. Hm. Perhaps a problem with the index? I then changed the query to this: touches = Touch.all().fetch(size) So that the first index wasn't involved. This worked for a while, but then started timing out again. Here's the error: Traceback (most recent call last): File /base/python_lib/versions/1/google/appengine/ext/webapp/ __init__.py, line 499, in __call__ handler.get(*groups) File /base/data/home/apps/showmeflow/1.329447312090117530/main.py, line 58, in get most_recent_touches = Touch.all().fetch(size) File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 1377, in fetch raw = self._get_query().Get(limit, offset) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 938, in Get return self._Run(limit, offset)._Next(limit) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 882, in _Run _ToDatastoreError(err) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 1636, in _ToDatastoreError raise errors[err.application_error](err.error_detail) Timeout What's a dork to do? Ben --~--~-~--~~~---~--~~ 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-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---