I have a question-answer-comment application(similar to stackoverflow). The questions and their related answers and comments logically form part of entity groups as defined in App Engine Docs .
I want to use entity groups/ancestor paths to group my entities together for 2 reasons:
- Improve query efficiency by storing Question and Answer entities together physically
- Allow me to perform ancestor queries thus eliminating the need for me store the Answer keys on the Question entity (relationships)
I do not want strong consistency as it will eventually cause contention.
Does App Engine always lock an entity group when updating or only when the update is being done in a transaction? In other words, do entity groups force updates to happen in transactions or simply provide the option to use transactions?