Ernst Bunders wrote: > André van Toly wrote: > >Op 12-mei-2006, om 11:35 heeft Nico Klasens het volgende geschreven: > > > >>This is exactly the point in which MMbase and Hibernate made > >>different design choices. The hibernate guys will tell you never to > >>use many-to-many relations anywhere. There is always a better > >>alternative. MMbase uses many-to-many relations everywhere. But they > >>both solve the persisitency problem > > > > > >Is it not true that it is your own choice to use many-to-many relations > >while building MMBase applications? You can avoid them and (maybe, we > >don't know because there are no tools to measure) build a fast > >performing application. > > I think the point is that mmbase is allways using a join table (ei the > relation) to join twoo nodes. That is not good for performance. Wat is > really bad is if the same join table is used to join say 5 or 6 steps in > one query. mmbase knows no other way. Specially when you combine this > with crappy database inheritance, the insrel table becomes a problem..
I'd propose the relative small change in query syntax, that you can also follow node-fields in a 'path' on the cloud. For those kind of relations you can skip the intermediate insrel then, simplifying the database query. An MMBase relation object is then a special kind of normal object with 2 node fields, and recognized by query-objects and syntax. <mm:list path="news;author,people"> or so which would lead to select .. from news n, people p where n.author = p.number; in stead of <mm:list path="news,author,people"> which would lead to select .. from news n, insrel i, people p where n.number = i.snumber and i.dnumber = people.p.number and i.rnumber = ..; Michiel -- Michiel Meeuwissen mihxil' Peperbus 111 MediaPark H'sum [] () +31 (0)35 6772979 nl_NL eo_XX en_US _______________________________________________ Developers mailing list [email protected] http://lists.mmbase.org/mailman/listinfo/developers
