http://code.google.com/appengine/docs/java/datastore/relationships.html#Dependent_Children_and_Cascading_Deletes
------------------------- Dependent Children and Cascading Deletes The App Engine implementation of JDO makes all owned relationships "dependent." If a parent object is deleted, all child objects are also deleted. Breaking an owned relationship by assigning a new value to the dependent field on the parent also deletes the old child. As with creating and updating objects, if you need every delete in a cascading delete to occur in a single atomic action, you must perform the delete in a transaction. -------------------------- So your: @PersistenceCapable(identityType = IdentityType.APPLICATION) public class MobilePhone implements IsSerializable { ........ @Persistent(dependent = "false") private User creator; ..... is regarded as 'MobilePhone' being the owner of the 'User' what is you don't expected. If you want to keep 'non-owned' relationship between 'MobilePhone' and 'User' than the best way is simply keep the key of the User in MobilePhone and to handle is manually. @PersistenceCapable(identityType = IdentityType.APPLICATION) public class MobilePhone implements IsSerializable { ........ @Persistent private Key creator; ..... --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-java@googlegroups.com To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en -~----------~----~----~----~------~----~------~--~---