mirror of
https://github.com/doctrine/orm.git
synced 2026-03-23 22:42:18 +01:00
[PR #1074] [MERGED] [DDC-3160] Alternate fix for DDC-2996 bug #9124
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/doctrine/orm/pull/1074
Author: @zimmermanj42
Created: 6/26/2014
Status: ✅ Merged
Merged: 7/6/2014
Merged by: @Ocramius
Base:
master← Head:DDC-3160📝 Commits (3)
a5cf641Add failing test for DDC-316065e7cc9[DDC-3160] Change to fix that was implemented for DDC-2996.6a48675Fix test issues.📊 Changes
2 files changed (+79 additions, -8 deletions)
View changed files
📝
lib/Doctrine/ORM/UnitOfWork.php(+9 -8)➕
tests/Doctrine/Tests/ORM/Functional/Ticket/DDC3160Test.php(+70 -0)📄 Description
The fix implemented for DDC-2996 seems to have broken quite a bit of code outside of Doctrine (for instance, the popular DoctrineExtensions project).
I'm not too well versed in Doctrine internals, but looking at the fix, I found it odd that an entity would live in both the insertion and update tracking in the unit of work.
This implementation should fix the case described in DDC-2996, while not creating any side effects with objects that are scheduled to be inserted.
I've ran this test with the Doctrine test suite and have also tested this change with the DoctrineExtensions project; unless I'm doing something wrong, it seems to have good results.
Again, I'm not too well versed in the inner workings of Doctrine, but I did a little research, poked around some code, and came up with this.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.