I've started getting over quota errors while testing in my sandbox
application on appengine but I can't see why by looking at the
dashboard or the logs.
In the logs there is just one warning (see below).
I'm testing the responsiveness/limits of ListProperty entities and had
managed to put about 4700 keys in a list property before I got two 500
errors (not from my app but from Google) and then I started getting
the over quota errors.
Screen grab of the dashboard, showing usage at the time of the over
quota errors:
http://aralbalkan.com/images/SafariScreenSnapz022.png
Would appreciate it if someone could look into it.
Also, I know that we're told not to put a large amount of items in a
ListProperty but (a) you basically have to if you're building any sort
of messaging functionality and (b) in my tests, lookup of
ListProperties and saving large ListProperties is very responsive
(lookup on ListProperty with 4000+ items ~= 0.69 secs, saving record
with ListProperty with 4000+ items ~= 1.67 items). Is there some sort
of artificial limit around the 5000 key mark or is this a bug?
Thanks,
Aral
The log, showing the one error (and the entry before it from a few
days ago) follows:
78.143.202.194 - - [27/06/2008:14:06:19 -0700] "GET /add-friends/aral/
4201/ HTTP/1.1" 0 0 - -
E 06-27 02:06PM 19.166
<class 'django.template.TemplateSyntaxError'>: Caught an exception
while rendering:
Original Traceback (most recent call last):
File "/base/data/home/apps/aral/1.30/django/template/debug.py", line
71, in render_node
result = node.render(context)
File "/base/data/home/apps/aral/1.30/django/template/
defaulttags.py", line 149, in render
nodelist.append(node.render(context))
File "/base/data/home/apps/aral/1.30/django/template/debug.py", line
87, in render
output = force_unicode(self.filter_expression.resolve(context))
File "/base/data/home/apps/aral/1.30/django/template/__init__.py",
line 542, in resolve
new_obj = func(obj, *arg_vals)
File "/base/data/home/apps/aral/1.30/django/template/
defaultfilters.py", line 31, in _dec
args[0] = force_unicode(args[0])
File "/base/data/home/apps/aral/1.30/django/utils/encoding.py", line
58, in force_unicode
s = s.decode(encoding, errors)
File "/base/python_dist/lib/python2.5/encodings/utf_8.py", line 16,
in decode
return codecs.utf_8_decode(input, errors, True)
MemoryError
Traceback (most recent call last):
File "/base/data/home/apps/aral/1.30/main.py", line 45, in <module>
main()
File "/base/data/home/apps/aral/1.30/main.py", line 42, in main
util.run_wsgi_app(application)
File "/base/python_lib/versions/1/google/appengine/ext/webapp/
util.py", line 76, in run_wsgi_app
result = application(env, _start_response)
File "/base/data/home/apps/aral/1.30/django/core/handlers/wsgi.py",
line 205, in __call__
response = self.get_response(request)
File "/base/data/home/apps/aral/1.30/django/core/handlers/base.py",
line 123, in get_response
return debug.technical_500_response(request, *exc_info)
File "/base/data/home/apps/aral/1.30/django/views/debug.py", line
74, in technical_500_response
html = get_traceback_html(request, exc_type, exc_value, tb)
File "/base/data/home/apps/aral/1.30/django/views/debug.py", line
169, in get_traceback_html
return t.render(c)
File "/base/data/home/apps/aral/1.30/django/template/__init__.py",
line 176, in render
return self.nodelist.render(context)
File "/base/data/home/apps/aral/1.30/django/template/__init__.py",
line 751, in render
bits.append(self.render_node(node, context))
File "/base/data/home/apps/aral/1.30/django/template/debug.py", line
71, in render_node
result = node.render(context)
File "/base/data/home/apps/aral/1.30/django/template/
defaulttags.py", line 29, in render
output = self.nodelist.render(context)
File "/base/data/home/apps/aral/1.30/django/template/__init__.py",
line 751, in render
bits.append(self.render_node(node, context))
File "/base/data/home/apps/aral/1.30/django/template/debug.py", line
71, in render_node
result = node.render(context)
File "/base/data/home/apps/aral/1.30/django/template/
defaulttags.py", line 149, in render
nodelist.append(node.render(context))
File "/base/data/home/apps/aral/1.30/django/template/
defaulttags.py", line 243, in render
return self.nodelist_true.render(context)
File "/base/data/home/apps/aral/1.30/django/template/__init__.py",
line 751, in render
bits.append(self.render_node(node, context))
File "/base/data/home/apps/aral/1.30/django/template/debug.py", line
81, in render_node
raise wrapped
W 06-27 02:06PM 19.168
This request used a high amount of CPU, and was roughly 11.7 times
over the average request CPU limit. High CPU requests have a small
quota, and if you exceed this quota, your app will be temporarily
disabled.
06-16 06:01AM 25.898 /log/ 0 475ms 0 kb ...
E 06-16 06:01AM 26.371 <type 'exceptions.ImportError'>: No module
named a