[google-appengine] Re: Deleting stuff

2008-12-16 Thread Carter Rabasa

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

2008-12-16 Thread Carter Rabasa

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

2008-11-21 Thread Chris Marasti-Georg
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

2008-11-21 Thread Ben Nevile

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
-~--~~~~--~~--~--~---