[DDC-678] OneToMany/OneToOne + onDelete=CASCADE may corrupt UoW. Created: 10/Jul/10 Updated: 05/Jun/11
|Project:||Doctrine 2 - ORM|
|Reporter:||Roman S. Borschel||Assignee:||Roman S. Borschel|
OneToMany/OneToOne associations together with an onDelete=CASCADE schema generation hint on the @JoinColumn and appropriate foreign key constraints can potentially result in a corrupt UoW if the associated objects are already managed. We need to add tests for such scenarios and settle on a well-defined behavior in such cases.
|Comment by Benjamin Eberlei [ 31/Oct/10 ]|
I think to preserve the semantics the following has to happen:
"on-delete" => "cascade" has to implicitly set cascade = remove. This hurts performance of course vs just using the on-delete, however it won't corrupt the UoW.
|Comment by Benjamin Eberlei [ 02/Jan/11 ]|
Not entirely would it hurt performance, you could check if on-delete => cascade is set. If this is the case you wouldnt need to do an explicit remove using the UnitOfWorks cascade.
|Comment by Benjamin Eberlei [ 05/Jun/11 ]|
Changed to improvement