Hello, Jasper, I'm having similar issues using binary UUID as PK, although I didn't implement a custom type.
I've been struggling with it and found no solution. I haven't tried to develop a custom type as I thought there was no need to. Now I don't know the path to follow. Could you please take a minute to see if my question in stackoverflow has something to do with your issues? ----> Question <http://stackoverflow.com/questions/26659740/symfony2-fosrestbundle-getting-uuid-packed-in-a-binary16-field-from-mysql> Many many thanks. Regards, José. El viernes, 31 de octubre de 2014 08:48:29 UTC+1, Jàπ (Jasper N. Brouwer) escribió: > > I'm running a little experiment: > > For a couple of tables I'm using a UUID as primary key. This UUID is > stored in a BINARY(16) column. I've also implemented a custom UuidType, > which strips out the dashes and converts the hex to binary (and the other > way around). This part is working great. > > Now I have a bidirectional OneToMany association from an entity with UUID > as Id, and another without. But Doctrine can't lazy-load the Collection > properly. It remains empty. In a query logger I can see the custom type is > probably not picked up: > > QUERY.DEBUG: SELECT t0.id AS id1, t0.type AS type2, t0.label AS label3, > t0.status AS status4, t0.sort_order AS sort_order5, t0.assignment_id AS > assignment_id6 FROM assignment_section t0 WHERE t0.assignment_id = ? ORDER > BY t0.sort_order ASC > {"params":["ff98ff019-2e84-afc8-e691-31c151c87ae"],"types":[null],"time":0.00038599967956543} > > > > The query logger shows "types":["uuid"] when fetching the root entity, so > my guess this is where it goes wrong: It binds the string version of the > UUID as parameter, which can't be found because the DB holds the binary > version. > > I'm going to dive into the internals of Doctrine, but I wanted to ask: > > Is this a known limitation? > Does loading associations ignore the custom type on purpose? > If so, why was this done? > > PS: Using PHP v5.5.18, Doctrine ORM v2.4.6 and MariaDB v10.0.14 > > -- > Jasper N. Brouwer > (@jaspernbrouwer) > > > -- 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.
