On Jul 30, 7:43 am, Joshua Smith <[email protected]> wrote:
> Jeff,
>
> I've reworked my app since I originally posted, to avoid relying on
> the task queue API.  The enqueue line was:
>
>           taskqueue.add(url='/admin/checkStarted?session=%s' %
> session.key(), method='GET', countdown='30')
>
> I did not set a task name.  I can see now that this would have avoided
> the repeated executions.  Good tip.

The problem with using a task name if you don't know whether or not it
went through is that you can end up with a Tombstoned Task. It would
be good if we definitely knew whether a TransientError means that a
task was added or not.

>
> I figured that if there was an exception adding a task to the queue,
> that meant the task had NOT been added to the queue.  You should
> update the docs to make it very clear that this is not necessarily the
> case.
>
> As for the retry, I sent the browser a redirect back to the same
> handler when the error occurred.  So what happened was a very fast
> try / except / redirect / try / except / redirect cycle for as long as
> my browser could stand (about 15 iterations).  Then, 30 seconds later
> the tasks all ran and I had datastore contention issues.
--~--~---------~--~----~------------~-------~--~----~
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