Doctrine: cascade=“remove” vs orphanremoval=true
What is the difference between the 2 options above? When is it preferable to choose each option? Serge Kvashnin The basic difference between them is: When using the orphanRemoval=true option Doctrine makes the assumption that the entities are privately owned and will NOT be reused by other entities. If you neglect this assumption your entities will get deleted by Doctrine even if you assigned the orphaned entity to another one. Say your User has one-to-many relation to Comment . If you are using cascade="remove" , you can remove the reference for Comment from one User , and then attach that