I haven't read up on how the datastore *really* works, but here's my
guess:

I think the datastore simply locks an entity group, and then before
writing it makes sure there is no lock on the entity group. So the
answer is no, it won't get slower as the number of entities in an
entity group increase. However, the chance that the entity group is
locked will increase with the number of entities (though that is
strongly coupled with how your application works).

Generally, you don't want several users modifying entities in the same
entity group since it increases the risk of locks blocking writes.

/Blixt

On Jun 24, 6:12 am, Mark <mar...@gmail.com> wrote:
> Hi,
>
> I've created two simple classes which I want to use in an entity
> group:
>
>     class User {
>         int numReports;
>     }
>
>     class Report {
>     }
>
> the User object will always be the parent, Report instances are part
> of a User's entity group. There can be many Report objects per User:
>
>     User
>       |--- Report
>
> when I save a Report instance, I want to increment the 'numReports'
> counter in the User object, in a transaction. This arrangement works
> fine.
>
> But as the # of Report instances increase, does app engine have to
> lock all other Report instances in the same entity group before
> performing the transaction? I'm worried that performance will degrade
> as the # of Report objects per User increases.
>
> Thanks

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

Reply via email to