Hi Patrick - I'll look into it! However, I'd also like to write an email to the Relinq people about how to best write "tree node attributing" visitors.
Visitors that I write usually have an additional parameter where "local" data can be passed down and up; Relinq visitors do not have this, so I used these global variables in the visitor - with the risk of forgetting them or overwriting or taking the wrong value ... which seems to have happened ... because I did not write enough test cases for complex (nested) expressions ... Regards Harald -------- Original-Nachricht -------- > Datum: Sun, 17 Apr 2011 11:33:24 -0600 > Von: Patrick Earl <[email protected]> > An: [email protected] > Betreff: Re: RE: [nhibernate-development] NH-2583 - Query with || operator > and navigations (many-to-one) creates wrong joins > Hi Harald. > > After did a sanity check on the patch and then committed it. I'm in > the middle of a deeper analysis and I found something I wanted to > check with you about. > > It seems that the _collectedPathMemberExpressionsInExpression and > _memberExpressionMapping fields are troublesome in places. For > example, when doing (A+(B+C)) it seems to drop the members collected > in A when it starts parsing the right side. In looking at the > _memberExpressionMapping, other places it combines the inner results > into a parent _memberExpressionMapping, but for the +, there is no > such collection. The _collectedPathMemberExpressionsInExpression > seems to have similar issues, though I didn't analyze it in depth. > > Could you look into this? > > Appreciate your help. > > Patrick Earl -- GMX DSL Doppel-Flat ab 19,99 Euro/mtl.! Jetzt mit gratis Handy-Flat! http://portal.gmx.net/de/go/dsl
