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
-~----------~----~----~----~------~----~------~--~---

Reply via email to