Be aware that the value of a global variable is not known at the start of a request. It could be the value from the previous request if the interpreter was already warm/running. It would be the initial value if the interpreter was started cold.
Why not put the GQL object in the request handler self.gql1= GqlQuery(...) or just a local variable? How often do you bind new values to the query for each request? 2008/12/17 Alex Epshteyn <alexander.epsht...@gmail.com>: > > Ah, I see. It's safe because a new request will not be processed by > the same instance of the python interpreter until the previous request > has fully completed, right? > > Thanks, Ryan! > > On Dec 16, 7:37 pm, Ryan Barrett <goo...@ryanb.org> wrote: >> hi alex! you're right to be cautious, but happily, requests are not >> handled by different threads. our python interpreters are single >> threaded, and handle only a single request at a time. more: >> >> http://code.google.com/appengine/docs/python/sandbox.htmlhttp://groups.google.com/group/google-appengine/browse_thread/thread/... >> >> given that, you don't need to worry about concurrent accesses to the >> query global variable, so this should be safe. even better, fetch() re- >> runs the query from the beginning, so if the parameters are the same >> across requests, you don't even need to bind() each time. > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---