[DDC-2059] Property perceived as dumplicate in composite foreign key Created: 04/Oct/12 Updated: 05/Oct/12 Resolved: 05/Oct/12 |
|
| Status: | Resolved |
| Project: | Doctrine 2 - ORM |
| Component/s: | Mapping Drivers |
| Affects Version/s: | 2.1.3 |
| Fix Version/s: | 2.2.4, 2.3.1 |
| Security Level: | All |
| Type: | Bug | Priority: | Major |
| Reporter: | Dimitris Bozelos | Assignee: | Benjamin Eberlei |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Description |
|
I have the following schema: CREATE TABLE `user` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`) ); CREATE TABLE `project` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `user_id` int(10) unsigned NOT NULL, PRIMARY KEY (`id`), ); CREATE TABLE `project_conversation` ( `project_id` int(10) unsigned NOT NULL, `user_id` int(10) unsigned NOT NULL, PRIMARY KEY (`project_id`,`user_id`) ) I have ommitted the foreign key definitions for better readability. When I execute doctrine:mapping:convert (in Symfony2, but it seems it's a Doctrine2 issue), I get the following error: [Doctrine\ORM\Mapping\MappingException] Property "user" in "Project" was already declared, but it must be declared only once I have tracked down the issue to be caused by the existence of `user_id` in the project table. So basically, because `project_conversation` references `project` which in turn references `user`, `project_conversation` reference to `user` is perceived as duplicate. I don't think that this should be the expected behavior though. user_id in `project` references the creator of the project while user_id in `project_conversation` references the creator of the conversation and thus I think the schema is valid. |
| Comments |
| Comment by Benjamin Eberlei [ 05/Oct/12 ] |
|
Will be fixed in 2.2.4 and 2.3.1 |