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.

Reply via email to