I may sound like an idiot for writing this, and I hope I am, but:

Occasionally, I see an inconsistency in the data store which I
attribute to a certain transaction being non-atomic. Happens only in
the live application AFAICS. And it's hard to reproduce.

In the datastore, I have a parent-child relation, modeled using two
classes:

* Parent: Exactly one parent, "main". It has a property called
"version" that is bumped up each time the family changes.

* Child: Various children of the parent.

Here is what happens in *one* transaction, called using
db.run_in_transaction:

1. A child is added.

2. The "version" of the parent is increased.

Now, sometimes (unfortunately), after that transaction has executed, I
see the following inconsistency:

1. A child has been added.

2. The "version" has not been increased.

To sum it up: Are there any known issues with App Engine's transaction
handling? Is there anything that I could've done wrong? Has anyone
ever seen something like this before?

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