Ok, interesting.
from Person p left outer join p.department => does an outer join
select p, p.department from Person p left outer join p.department => does an outer join + an inner join (which in effect is an inner join)
I wasn't aware that selecting "p, p.department" would add an implicit inner join. It did not do this prior to 3.3.2. It seems like it would only make sense to add an inner join if there was not an explicit outer join specified in the hql query itself.
Which is correct - the pre-3.3.2 behavior or the current behavior? Is it possible to go back to the old behavior? I just need to make a decision whether to wait for this to be changed, or to refactor a bunch of HQL before we can upgrade from 3.2.7.
Thanks! Robin
|