[PHPCR-72] persist cancels move Created: 19/Jun/12  Updated: 21/Jul/12  Resolved: 21/Jul/12

Status: Resolved
Project: Doctrine PHPCR
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Freddy H. Assignee: Lukas Kahwe
Resolution: Won't Fix Votes: 0
Labels: None


If i have a node that i fetch from the repo using $dm->find()

If i change an attribute in it.
Then i call $dm->move() on it

Then i call $dm->flush().

It will work.

However if i call $dm->persist() on the node (that i already fetched from $dm->find()) and then call $dm->flush()
The $dm->move() won't occur, it will be cancelled, but the attribute i changed will still be updated.

Comment by Lukas Kahwe [ 20/Jul/12 ]

i have to think about if this is a bug or a feature.
its certainly useful to have a way to "cancel" operations ..
f.e. persist() also cancels remove()

then again persist() is i guess viewed by many as a non problematic operation since it commonly doesn't break anything if one persisted an object multiple times.

Comment by Lukas Kahwe [ 21/Jul/12 ]

as i expected this is an intentional feature:

we could think about adding a dedicated method to "reset" the state, but the ORM doesn't have something like that so i rather not introduce it.

Generated at Tue Nov 24 19:28:51 EST 2015 using JIRA 6.4.10#64025-sha1:5b8b74079161cd76a20ab66dda52747ee6701bd6.