Hi,

I have some posts on this error and also read article
https://developers.google.com/appengine/articles/scaling/contention. I
am still not sure what's the best solution for us. We are a mobile
application in beta with very less volume. We don't have concurrent
updates for same entity from various processes.

I have my data object like this..

@PersistenceCapable
public class MyDataObject {
   @PrimaryKey
    Key key;

   @Persistent(defaultFetchGroup="true")
   @Element(dependent="true")
   User user;

    @Persistent(defaultFetchGroup="true")
    @Element(dependent="true")
    List<Task1> task1List;

    @Persistent(defaultFetchGroup="true")
    @Element(dependent="true")
    List<Task2> task2List;

    ........
    .......
    .........
}

Task1 & Task2 are custom objects with bunch of fields in each of
them.  For Task1 & Task2, I have
    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Key key;
For each user, update MyDataObject with a list of tasks for taskList1,
taskList2 etc.. We have < 5 to 10 elements in each list but I see this
java.util.ConcurrentModificationException: too much contention on
these datastore entities. please try again.
        at
com.google.appengine.api.datastore.DatastoreApiHelper.translateError(DatastoreApiHelper.java:
39)

error intermittently. Anything we should do differently? When this
error happened, we did a retry and it caused more problems. We saw
loss of data. We lost some Task1 , Task2 entities for some users
randomly.

Any suggestions are appreciated.

Thanks
Neeli


-- 
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-appengine@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