Am learning GAE and got a bit confused on this.
Lets say i have a sample model

Person (parent)   {id, name, List<Car>}
Car     {make, model, Person}

(1 - m relationship) say

So both are in same entity groups (lets say i want to transact them
together).

Sample data:
Person:     ID    NAME
                 1     Aravind
                 2     Hari

Car
                MAKE         MODEL
                  Ford            #258     {Aravind}
                  Maruti         #456     {Hari}
                  Mercedes    #456     {Hari}

According to http://code.google.com/appengine/articles/scaling/contention.html
'Keep entity groups small' and also read in other places,
i see that when you update a entity in an entity group in a
transaction, entity group is locked, so when other process tries
updating same entity group it fails/aborts.

So my doubt is, does this mean that if Aravind updates his Car data,
then Hari can't update his Car data at the same time, since both
entities fall under same entity group (and hence it has to be retried
to get it passed).
(if above is true, does it mean that when above update is done
concurrently by say 1K users then most of them would fail!)

or i just understood it wrongly
and does this apply only to each individual's data i.e. in above e.g.
another process just can't update Aravind's Car data (when Aravind is
actually updating Car data)
but CAN update Hari's Car data (and hence other's Car data).

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