Maybe, but my app needs it. So I will not change it for that.

And even with 3 entities of 3 different kinds you have to manualy
rollback it because a transaction works only with 1 kind. So If the
timeout happends on the second write, you have to manually rollback
the first put() and it can be very complicated if the number of
entites/kinds increases.

Another thing, you can have a timeout on a a simple get_by_keyname,
fetch(50),... etc,... So the number of write is not the only/main
issue and a request can wait 30s so it should no be an issue.

I understand that in order to remove timeout we have to change things
but an article that explain what to do and how could be very usefull.

During the first  "app chat" (long time ago), I've asked for it and it
seems the Google team agree with it. So :)
http://groups.google.com/group/google-appengine/browse_frm/thread/cedc737d9678af06/ec5af0d421e445da

Regards.

On 15 avr, 16:00, 风笑雪 <[email protected]> wrote:
> It's not recommend to write more than 20 entities in one request, and I
> don't think you will exceed it in a common request.The datastore has such
> a limitation of writing, you can't treat it as a relationship db. (In my
> test, it takes about 1 second to put 100 simple entities into db.)
>
> However, sometimes we may meet this situation.
> My suggest is to limit the number of entities as possible, use
> "db.run_in_transaction" to keep entities correct and complete saved to db.
> If possible, AJAX calls can help you breaks a big transaction into several
> small transaction.
> And you can set how many times the transaction should try when operation
> fails, so you can give a failed message to user before timeout.
>
> 2009/4/15 Sylvain <[email protected]>
>
>
>
> > Hi,
>
> > Currently, I think 0.5% of my Datastore operations result in a
> > datastore timeout.
> > I don't know why... It can be raised on very simple or very
> > complicated operation.
>
> > For my app for example, the problem is that it can occur during a big
> > request where I need to create 50-100 entities of 3 different kinds.
> > So I need to manually rollback everything and it can be difficult.
>
> > Having a "big" transaction could be a solution, but GAE it too limited
> > (only 1 kind,....).
>
> > It seems that datastore timeout will always be there and we have to
> > manage them. So I think we need an article that explains how to handle
> > them properly with different scenarios. It will be very appreciated.
>
> > Regards.
--~--~---------~--~----~------------~-------~--~----~
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