To add another twist, now I have an entity at the top of the stack
that is found using
q = FacebookUser.all()
q.filter('authorized = ',True)
q.order('last_nudged_at')
u = q.get()
but, if you try to load this entity by key, as you need to do for a
transaction, you get None back. ???? Trying to access that entity's
record in the Data Viewer also threw an exception. I was, however,
able to delete it from the top of that index listing using the Data
Viewer's GQL option.
Ben
On Apr 14, 3:38 pm, Ben Nevile <[email protected]> wrote:
> Hi Jeff,
>
> To clarify, the last_nudged_at property *is* changed, but the entity
> stays at the top of the stack.
>
> Ben
>
> On Apr 14, 12:26 pm, Jeff S <[email protected]> wrote:
>
>
>
> > Hi Ben,
>
> > If you are experiencing write contention on some of these updates,
> > then that may explain why the last_nudged_at property is not changed
> > and an entity tends to stay at the top of the stack. Do you see
> > datastore timeout errors in these cases (I imagine the exception may
> > be hidden somewhere in the JavaScript <--> server exchange)?
>
> > Thank you,
>
> > Jeff
>
> > On Apr 14, 11:48 am, Ben Nevile <[email protected]> wrote:
>
> > > bump. I have observed this many times over the past few days. Maybe
> > > has to do with transactions and/or write contention, since there is a
> > > lot of that in my app.
>
> > > Ben
>
> > > On Apr 1, 8:23 pm, Ben Nevile <[email protected]> wrote:
>
> > > > Hi GAE team and devotees,
>
> > > > I have a entity that looks like
>
> > > > class FacebookUser(db.Model):
> > > > expired_fotm = db.BooleanProperty()
> > > > last_nudged_at = db.DateTimeProperty()
>
> > > > and an index that looks like
>
> > > > - kind: FacebookUser
> > > > properties:
> > > > - name: expired_fotm
> > > > - name: last_nudged_at
>
> > > > Unbeknownst to the users of my application, some javascript is
> > > > constantly polling a worker handler that finds the first entity in the
> > > > index, operates on it, then sets "last_nudged_at" to the current
> > > > time. There are more than a million of these entities so it takes
> > > > some time to go through them all.
>
> > > > This afternoon using the Data Viewer and the GQL query "SELECT * FROM
> > > > FacebookUser where expired_fotm=True order by last_nudged_at" I
> > > > observed several times that an entity would remain "stuck" in the
> > > > first position in the index after it was processed. Usually it would
> > > > remain there only for 10-30 seconds. However this evening one entity
> > > > stayed in an incorrect index position for several hours. I put() it
> > > > again and it properly indexed itself.
>
> > > > Has anyone ever observed anything like this? Let me know if I'm not
> > > > making myself clear.
>
> > > > Ben <3 GAE
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/google-appengine?hl=en
-~----------~----~----~----~------~----~------~--~---