seems that A0.dbid = A1.dbid = Ax.dbid are not equivalent, in regards 
to the relation/get().

On Thursday 02 October 2008 22:48:23 Michael Bayer wrote:
> On Oct 2, 2008, at 4:05 PM, [EMAIL PROTECTED] wrote:
> > On Thursday 02 October 2008 22:26:06 Michael Bayer wrote:
> >> On Oct 2, 2008, at 11:57 AM, [EMAIL PROTECTED] wrote:
> >>> hi
> >>> lets say, A points to B.
> >>> i do a query against A about which things link to some instance
> >>> of B. then,
> >>> 1) if i specify eagerload, i get many times same object-data
> >>> being piped from the server; ok but i dont want it
> >>> 2) if i dont specify eagerload (lazy), access to each A fires a
> >>> lazyload-query for the (same) B! Although the object is in
> >>> memory already. is this expected behaviour or? the relevant
> >>> dbid is already present, hence it can be checked against
> >>> session-caches etc?? what should i do here?
> >>
> >> if you load an A that wasnt previously present, its A.bs
> >> collection is empty.
> >> The individual B objects might be in the session but the
> >> information that they are associated with your "A" is not
> >> present, unless we scanned through the Session and matched up
> >> foreign keys. This latter approach basically turns Session into
> >> its own relational engine which is why we dont even try to get
> >> into that. So the lazy query for the"B"s proceeds, but we do
> >> reuse the B's already present in the session so there is far
> >> less overhead associated with fetching the rows.
> >>
> >> The approach taken by some ORMs Ive seen is to link the A.bs
> >> load to load the .bs for *all* As.  That seems pretty "dirty" to
> >> me since it means we have to keep track of Queries and such.
> >
> > nah, it's a simple *toone singular reference, not a collection.
> > can't something be done for it? hack something somewhere?
>
> a simple many-to-one will use query.get(x) for the lazyload, and no
> SQL will be issued if B is already present in the session.
>
>
> 


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to