I have the following handler that is called via cron. It is set to run for 8mins...
def get(self): logging.info("Deleting items...") #set end time (8mins from now) end = datetime.datetime.now() + datetime.timedelta(minutes=8) now = datetime.datetime.now() delete_fetch_size = 30 cursor = False proceed = True counter = 0 #start loop while now < end: #get items if proceed: query = Item.all(keys_only=True) query.filter('status', 'FOR DELETION') if cursor: query.with_cursor(cursor) try: results = query.fetch(delete_fetch_size) except: logging.error('Failed to fetch.') break if results: try: db.delete(results) proceed = True cursor = False if len(results) == delete_fetch_size: cursor = query.cursor() counter += len(results) except: logging.error('Failed to delete.') proceed = False else: break else: try: db.delete(results) proceed = True except: logging.error('Failed to delete again.') proceed = False #no more results? if not cursor: logging.info('Deleted ' + str(counter) + ' Items') break now = datetime.datetime.now() It spewed out the following error... 01-31 03:47PM 49.990 Traceback (most recent call last): E 01-31 03:47PM 49.990 File "/base/python_runtime/python_lib/versions/ 1/google/appengine/api/app_logging.py", line 70, in emit E 01-31 03:47PM 49.990 message = self._AppLogsMessage(record) E 01-31 03:47PM 49.990 File "/base/python_runtime/python_lib/versions/ 1/google/appengine/api/app_logging.py", line 83, in _AppLogsMessage E 01-31 03:47PM 49.991 message = self.format(record).replace("\n", NEWLINE_REPLACEMENT) E 01-31 03:47PM 49.991 File "/base/python_runtime/python_dist/lib/ python2.5/logging/__init__.py", line 630, in format E 01-31 03:47PM 49.991 return fmt.format(record) E 01-31 03:47PM 49.991 File "/base/python_runtime/python_dist/lib/ python2.5/logging/__init__.py", line 426, in format E 01-31 03:47PM 49.991 record.exc_text = self.formatException(record.exc_info) E 01-31 03:47PM 49.991 File "/base/python_runtime/python_dist/lib/ python2.5/logging/__init__.py", line 398, in formatException E 01-31 03:47PM 49.991 traceback.print_exception(ei[0], ei[1], ei[2], None, sio) E 01-31 03:47PM 49.991 File "/base/python_runtime/python_dist/lib/ python2.5/traceback.py", line 125, in print_exception E 01-31 03:47PM 49.991 print_tb(tb, limit, file) E 01-31 03:47PM 49.991 File "/base/python_runtime/python_dist/lib/ python2.5/traceback.py", line 69, in print_tb E 01-31 03:47PM 49.991 line = linecache.getline(filename, lineno, f.f_globals) E 01-31 03:47PM 49.991 File "/base/python_runtime/python_dist/lib/ python2.5/linecache.py", line 14, in getline E 01-31 03:47PM 49.991 lines = getlines(filename, module_globals) E 01-31 03:47PM 49.991 File "/base/python_runtime/python_dist/lib/ python2.5/linecache.py", line 40, in getlines E 01-31 03:47PM 49.991 return updatecache(filename, module_globals) E 01-31 03:47PM 49.991 File "/base/python_runtime/python_dist/lib/ python2.5/linecache.py", line 129, in updatecache E 01-31 03:47PM 49.991 lines = fp.readlines() E 01-31 03:47PM 49.991 MemoryError E 01-31 03:47PM 49.560 Recorder.save() failed Traceback (most recent call last): File "/base/python_runtime/python_lib/versions/1/google/ appengine/ext/appstats/recording.p C 01-31 03:47PM 50.006 Exceeded soft memory limit with 299.988 MB after servicing 10 requests total Any ideas what happened here? What does "Exceeded soft memory limit" mean? Thanks -- 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.