More info again, still hoping someone can help: I tried to replace the DAL query with native app engine code.
Original DAL: query=( (mydb[record].application == application_id) & (mydb[record].entity == entity_id) & (mydb[record].is_deleted == False)) result = mydb(query).select() Native: from google.appengine.ext import ndb class record(ndb.Expando): pass result = record.query().filter(ndb.GenericProperty('application') == application_id, ndb.GenericProperty('entity') == entity.id, ndb.GenericProperty('is_deleted') == False) I was hoping this will speed things up, but it did not. It was the same slowness on the local dev env. On the server, the situation became even worse: "While handling this request, the process that handled this request was found to be using too much memory and was terminated. " Anyway, I still find it unreal that a query of 800 rows can last more than 20 seconds. Ideas are continue to be most welcome. -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.