Skip to content

Loading…

DDC-1370: preInsert, postInsert, prePersist, postPersist, preUpdate, postUpdate code and documentation of events #1990

Open
doctrinebot opened this Issue · 5 comments

2 participants

@doctrinebot

Jira issue originally created by user @guilhermeblanco:

Currently we have a set of Lifecycle events, but they seem to be misleading both in actual implementation and documentation.

One good example is prePersist and postPersist, which is only fired when you're creating new entities. It should be renamed to preInsert and postInsert.
As of preUpdate and postUpdate, they seem quite valid.

But if we rename prePersist and postPersist to (pre|post)Insert, we may have a situation where you wanna cover both insert and update.
For this, (pre|post)Persist should be reinstated, but acting differently from what it does currently.

@doctrinebot

Comment created by rdohms:

Also, documentation for post* methods is broken at the website:

"Changes in here are not relevant to the persistence in the database, but you can use this events to"

It cuts off in mid-sentence.

@doctrinebot

Comment created by @guilhermeblanco:

RDohms, this paragraph was already sorted out.

The actual ticket is still valid here.

@doctrinebot

Comment created by @guilhermeblanco:

Updating fix version

@doctrinebot

Comment created by mattm458:

Commenting here to say that this caused a lot of headaches for our project until we got it sorted out what these events really do.

The problem is that the term 'persist' is ambiguous - it means both persist and update in the context of the persist() function call, but only means INSERT in the context of the event system.

@doctrinebot

Comment created by darkhorizon:

Please make this a priority. After calling $em->persist($repo), there is no reason for postPersist to not be triggered with this terminology. Renaming things can be a pain when considering legacy support, but this is really an area that should be revisited.

@beberlei beberlei was assigned by doctrinebot
@doctrinebot doctrinebot added this to the 2.x milestone
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.