Please provide your mapping information. Possibly in a Gist at GitHub. This part of your description seem awkward to me:
*"In each of B and C, a_id has: unique=true as it is primary key but I have:* *$metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_NONE);instead of GENERATOR_TYPE_IDENTITY to tell the entity that this primary key is not auto-incrementing as it is FK too."* Why would you have other Entities (B and C) define metadata about Entity A? I would say you try to define stuff too strict, let Doctrine do that hard work for you. Maybe in the last DBAL version a conflict that existed in your mapping for a while, is now generating an error because of new checks. I would assume Doctrine DBAL is correct in that ;) Cheers On 27 June 2015 at 21:22, Nima Sadjadi <[email protected]> wrote: > > Also I created a blank db, and tried to create tables with > orm:schema-tool:create --dump-sql > I am still getting the same error, and in two previous emails, I described > how to replicate the error. > Doesn't it look like a bug in dbal 2.5.1? 2.5.0 works fine. > Please advice. > > > On Sat, Jun 27, 2015 at 10:22 PM, Nima Sadjadi <[email protected]> wrote: > >> >> Hi, >> >> In previous email I described why and how that error occurs, I also >> discovered that if I keep orm version 2.5.0 but with dbal 2.5.0 instead of >> dbal 2.5.1, the problem solved! so the issue is changes in dbal 2.5.1 vs >> dbal 2.5.0. nothing to do with orm at all. >> What are major changes in dbal 2.5.1 that causes this problem? >> >> >> >> On Sat, Jun 27, 2015 at 8:19 PM, Nima Sadjadi <[email protected]> wrote: >> >>> >>> Hello, >>> >>> Thanks for trying to help, After lots of testing, I discovered the >>> problem: >>> I have A table oneToOne to two tables, B and C via the same id and FK in >>> both. I mean: >>> >>> A OneToOne with B: name: id, referenceColoumn: a_id >>> A OneToOne with C: name: id, referenceColoumn: a_id >>> >>> in tables B and C, the coloumn a_id is Primary key of B and C. because >>> the only mappings in each of B and C, is OneToOne mapping to A, so a_id is >>> both FK and primary key, >>> >>> In each of B and C, a_id has: unique=true as it is primary key but I >>> have: >>> $metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_NONE); >>> instead of GENERATOR_TYPE_IDENTITY to tell the entity that this primary >>> key is not auto-incrementing as it is FK too. >>> >>> The older doctrine version had no problem with this all, but in the >>> latest version, it gives that error, if an entity has OneToOne mapping with >>> two other entities via the same primary key, is it a bug in latest version? >>> If I remove one of these mappings from A, then it is solved, but I need >>> mappings to both B and C in A. How can I solve this? please advice as I am >>> stuck. >>> >>> Many thanks in advance. >>> >>> >>> >>> >>> >>> On Wed, Jun 24, 2015 at 8:25 AM, Barrie Treloar <[email protected]> >>> wrote: >>> >>>> >>>> >>>> On Tuesday, June 23, 2015 at 8:34:17 AM UTC+9:30, Parsifal wrote: >>>>> >>>>> Hi, >>>>> >>>>> since I updated orm to 2.5.0 and dbal to 2.5.1 when I want to run >>>>> validate-schema command on console I get the error: >>>>> >>>>> [Doctrine\DBAL\Schema\SchemaException] >>>>> An index with name 'uniq_71260315bf396750' was already defined on >>>>> table 'items'. >>>>> >>>>> Actually I did not define any index with that name in that table, I >>>>> have just one primary key. Older doctrine version had no such problem. I >>>>> did search the group and saw some discussions, but I did not understand >>>>> this is a confirmed bug or how can I solve this issue? please advice. >>>>> >>>>> >>>> If your table can be shared, can you provide your Doctrine table >>>> yaml/annotations? >>>> >>>> The uniq_<hash> tells me it is an auto-generated index. >>>> >>>> You can use >>>> php app/console doctrine:schema:create --dump-sql >>>> to show you the commands that would be used to create your schema, you >>>> can then see which ones cause duplicates. >>>> >>>> I suspect that you have are using a combination of annotations that is >>>> causing the trouble. >>>> >>>> http://doctrine-orm.readthedocs.org/en/latest/reference/annotations-reference.html#annref-index >>>> >>>> e.g. I use >>>> @ORM\Index to rename all my primary key indexes. >>>> @ORM\UniqueConstraint for non-key indxes >>>> >>>> But I am not using >>>> @ORM\Column{unique=true} >>>> >>>> I think this also causes the index to be created but you can't control >>>> the name at this point, and so when I had both I had your problem. >>>> However, this was a while ago, and I've forgotten the exact cause/ >>>> >>>> Also, this is the first time I'm using Doctrine, so I really dont know >>>> what I am talking about. I've just bumbled along well enough so far. >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "doctrine-user" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> To post to this group, send email to [email protected]. >>>> Visit this group at http://groups.google.com/group/doctrine-user. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> >> > -- > You received this message because you are subscribed to the Google Groups > "doctrine-user" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/doctrine-user. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "doctrine-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/doctrine-user. For more options, visit https://groups.google.com/d/optout.
