Skip to content

Loading…

DDC-2775: Bug with cascade remove #3522

Closed
doctrinebot opened this Issue · 3 comments

2 participants

@doctrinebot

Jira issue originally created by user mnapoli:

I have met a bug with cascade remove that I managed to reproduce with this use case (see also the diagram in the attachments):

  • User has many Roles
  • Roles has many Authorization
  • User has also many Authorization (cache of all authorizations of all roles)

All these associations are bidirectional, and with "cascade remove".

When I remove User:

User cascade remove on Role

Role cascade remove on Authorization

User cascade remove on Authorization

If collections are lazy-loaded, then step 1. will clear the roles from the identityMap, but step 3. will reload the roles (because the authorizations will be lazy-loaded) and re-insert them in the identityMap.

As a consequence, the first flush() succeeds, but any further flush() yields:

[Doctrine\ORM\ORMInvalidArgumentException] A new entity was found through the relationship 'Role#user' that was not configured to cascade persist operations for entity...

I am creating a PR with a testcase, and probably a fix.

@doctrinebot

Comment created by mnapoli:

PR : #837

@doctrinebot

Comment created by @doctrinebot:

A related Github Pull-Request [GH-837] was closed:
#837

@doctrinebot

Issue was closed with resolution "Fixed"

@beberlei beberlei was assigned by doctrinebot
@doctrinebot doctrinebot added this to the 2.4.2 milestone
@doctrinebot doctrinebot closed this
@doctrinebot doctrinebot added the Bug label
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.