Doctrine 2 - ORM
  1. Doctrine 2 - ORM
  2. DDC-2762

[GH-829] [DDC-2761] Fixed UnitOfWork::recomputeSingleEntityChangeSet exception with STATE_REMOVED entities

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Duplicate
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Security Level: All
    • Labels:
      None

      Description

      This issue is created automatically through a Github pull request on behalf of giosh94mhz:

      Url: https://github.com/doctrine/doctrine2/pull/829

      Message:

      Hi!

      I found a bug in UnitOfWork::recomputeSingleEntityChangeSet for the branch 2.4, which is also present in master. I didn't tested previous stable versions, but the bug may also apply.

      The problem is that an exception is thrown on flush (at least when using a single entity flush), if an entity is in deleted state and also with pending modification and a preUpdate listener configured.

      I've attached a patch and a unit tests (I've tweeked a previous preUpdate method used for testing, but everythings pass).

      Anyway, this result in an UPDATE followed by a DELETE statement. An entity in STATE_REMOVED shouldn't need to be updated, and should be immediately deleted. If you agree, I could implement this behaviour myself (as long I manage not to break unit tests).

      PS: sorry for the commit on the 2.4 branch

        Activity

        Hide
        Giorgio Premi added a comment -

        The DoctrineBot didn't read "DDC-2761" in the title of the pull request, so it has opened a new bug. The test class now refers to DDC-2761 as ticket number, and there is a duplicate ticket.

        Sorry for the extra work guys, but I've opened a github account just to send you this patch! Next time I'll RTFM, promise!

        Show
        Giorgio Premi added a comment - The DoctrineBot didn't read " DDC-2761 " in the title of the pull request, so it has opened a new bug. The test class now refers to DDC-2761 as ticket number, and there is a duplicate ticket. Sorry for the extra work guys, but I've opened a github account just to send you this patch! Next time I'll RTFM, promise!
        Hide
        Doctrine Bot added a comment -

        A related Github Pull-Request [GH-845] was closed:
        https://github.com/doctrine/doctrine2/pull/845

        Show
        Doctrine Bot added a comment - A related Github Pull-Request [GH-845] was closed: https://github.com/doctrine/doctrine2/pull/845
        Hide
        Doctrine Bot added a comment -

        A related Github Pull-Request [GH-829] was closed:
        https://github.com/doctrine/doctrine2/pull/829

        Show
        Doctrine Bot added a comment - A related Github Pull-Request [GH-829] was closed: https://github.com/doctrine/doctrine2/pull/829
        Hide
        Benjamin Eberlei added a comment -

        This was fixed with DDC-2790

        Show
        Benjamin Eberlei added a comment - This was fixed with DDC-2790

          People

          • Assignee:
            Benjamin Eberlei
            Reporter:
            Doctrine Bot
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: