LOTS of errors on db.get() suddenly

89 views
Skip to first unread message

Jason Collins

unread,
Apr 18, 2012, 4:55:27 PM4/18/12
to Google App Engine
Seeing lots of errors on db.get() suddenly and from all parts of our
code (no, we haven't pushed any new code).

Also, our dashboard is throwing lots of errors.

Anyone else seeing this? (I've opened an enterprise support case
already, but wondering if anyone else is seeing same.)

j

Jason Collins

unread,
Apr 18, 2012, 5:00:34 PM4/18/12
to Google App Engine
Also, deployments are throwing errors.
j

flash

unread,
Apr 18, 2012, 5:04:08 PM4/18/12
to google-a...@googlegroups.com
I'm seeing this error on pretty much all requests:

'Query' object has no attribute '_projection'

Jeff Schnitzer

unread,
Apr 18, 2012, 5:05:28 PM4/18/12
to google-a...@googlegroups.com
I also seem to be having trouble deploying an app. Python2.7, HRD.
Works some times and not others. When it works, it tends to take a
lot of "Checking..." iterations.

Jeff

> --
> 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-a...@googlegroups.com.
> To unsubscribe from this group, send email to google-appengi...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
>

Jason Collins

unread,
Apr 18, 2012, 5:05:34 PM4/18/12
to Google App Engine
We are seeing this on data centre na3, but not on na6.

j

powera (App Engine Reliablity)

unread,
Apr 18, 2012, 5:07:02 PM4/18/12
to Google App Engine
What is your app id?

The admin console looks to have thrown higher error rates for a 5
minute window recently, this is unrelated to any datastore issues.

powera (App Engine Reliablity)

unread,
Apr 18, 2012, 5:09:17 PM4/18/12
to Google App Engine
Nevermind, I can look up the enterprise support case.

On Apr 18, 2:07 pm, "powera (App Engine Reliablity)"

Jason Collins

unread,
Apr 18, 2012, 5:24:11 PM4/18/12
to Google App Engine
I don't think this is a datastore issue. The stack trace looks like a
python backend issue.


On Apr 18, 3:09 pm, "powera (App Engine Reliablity)"

Jason Collins

unread,
Apr 18, 2012, 5:48:48 PM4/18/12
to Google App Engine
This is almost certainly due to a change in a protected attribute on
the Query class in 1.6.5 (which is rolling out on this datacenter).

I KNOW, I KNOW - we should not be relying on a protected attribute. It
was part of the global changes we needed to put in place for our HRD
cutover.

So, that said, I need to convert a Query object into a keys_only=True
Query object (i.e., everything else the same, but keys_only=True is
set). Can anyone think of a safe way to do that?

(In 1.6.4, the following worked, which is now what is broken:
"query._keys_only = True")

j

Alfred Fuller

unread,
Apr 18, 2012, 5:50:50 PM4/18/12
to google-a...@googlegroups.com
Is query a db.GqlQuery or a db.Query?

In either case you can use:

query.run(keys_only=True)  # works for fetch and get as well 

Jason Collins

unread,
Apr 18, 2012, 5:52:36 PM4/18/12
to Google App Engine
It is a db.Query.

Awesome - thanks for the quick response Alfred!

j

On Apr 18, 3:50 pm, Alfred Fuller <arful...@google.com> wrote:
> Is query a db.GqlQuery or a db.Query?
>
> In either case you can use:
>
> query.run(keys_only=True)  # works for fetch and get as well
>

Jason Collins

unread,
Apr 18, 2012, 5:55:06 PM4/18/12
to Google App Engine
Will this work for MultiQuery too?
j

On Apr 18, 3:50 pm, Alfred Fuller <arful...@google.com> wrote:
> Is query a db.GqlQuery or a db.Query?
>
> In either case you can use:
>
> query.run(keys_only=True)  # works for fetch and get as well
>

Alfred Fuller

unread,
Apr 18, 2012, 5:56:21 PM4/18/12
to google-a...@googlegroups.com
Should work for everything, if not, let me know :-)

Jason Collins

unread,
Apr 18, 2012, 6:04:28 PM4/18/12
to Google App Engine
I am seeing this under 1.6.4. We had some conditional logic before, I
will continue with that for now. Could be that this is supported under
1.6.5, but we're in an in-between stage at the moment...

BadRequestError: keys only queries are not supported by multi-query.

j

On Apr 18, 3:56 pm, Alfred Fuller <arful...@google.com> wrote:
> Should work for everything, if not, let me know :-)
>

Alfred Fuller

unread,
Apr 18, 2012, 6:21:34 PM4/18/12
to google-a...@googlegroups.com
Ah, of course, the key word argument works, but keys_only queries have never been compatible with multi-query.

Jason Collins

unread,
Apr 18, 2012, 7:03:41 PM4/18/12
to Google App Engine
Ok, the patch is up and everything looks good.

For the record, this was our fault because we were relying on a
protected interface in the API.
At the same time, it was triggered by a backend rollout; it might be
nice to let us know these will be happening so we can watch our apps.

Thanks for the help!
j

On Apr 18, 4:21 pm, Alfred Fuller <arful...@google.com> wrote:
> Ah, of course, the key word argument works, but keys_only queries have
> never been compatible with multi-query.
>

Amy Unruh

unread,
Apr 18, 2012, 11:25:43 PM4/18/12
to google-a...@googlegroups.com
Try clearing memcache from the admin console.  (You are probably caching (so pickling) Query objects; if so, there was a recent change that would trigger this error on unpickling.)

--
You received this message because you are subscribed to the Google Groups "Google App Engine" group.
To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/mHi4_w7xB00J.

Alfred Fuller

unread,
Apr 19, 2012, 2:15:18 PM4/19/12
to google-a...@googlegroups.com
Ya, this is a pickling issue, we have created a fix for it and will deploy it soon. In the mean time, recreating any queries that were pickled using the 1.6.4 runtime will fix this problem.
Reply all
Reply to author
Forward
0 new messages