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.

Reply via email to