[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-1718?page=c...
]
Geoffrey De Smet commented on HHH-1718:
---------------------------------------
status: "Awaiting testcase", but apparently Sergey wrote one in the duplicate
issue linked to this one :)
Sergey Koshcheyev - [01/Mar/07 09:13 AM ]
It seems that not only multiple bag fetches should be disallowed, but any multiple
collection fetches which include a bag (with possibly some exceptions). For example, this
currently fails for me on H3.2 from SVN (put this into ASTParserLoadingTest.java):
public void testBagSetFetchFails() {
Session s = openSession();
s.beginTransaction();
Human human = new Human();
human.setFriends(new ArrayList());
Human friend1 = new Human();
Human friend2 = new Human();
human.getFriends().add(friend1);
human.getFriends().add(friend2);
friend1.setNickNames(new TreeSet());
friend1.getNickNames().add("nick1");
friend1.getNickNames().add("nick2");
friend2.setNickNames(new TreeSet());
friend1.getNickNames().add("nick21");
friend1.getNickNames().add("nick22");
s.save(human);
s.save(friend1);
s.save(friend2);
s.getTransaction().commit();
s.close();
s = openSession();
human = (Human) s
.createQuery( "from Human h join fetch h.friends f join fetch f.nickNames nof"
)
.uniqueResult();
assertTrue(Hibernate.isInitialized(human.getFriends()));
assertEquals(2, human.getFriends().size());
s.getTransaction().commit();
s.close();
}
Have multiple bag fetches revert to subselect fetching for all but
one of the bags
----------------------------------------------------------------------------------
Key: HHH-1718
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-1718
Project: Hibernate3
Issue Type: Improvement
Components: core, query-criteria, query-hql
Reporter: Steve Ebersole
Assignee: Steve Ebersole
Fix For: hql+collection
Attachments: hibernate_eksempel.zip
Follow on to HHH-1413. Multiple bag fetches were simply disallowed as the resolution to
that particular case in the interest of working around that issue.
The correct longer term solution is to not fetch all the bags at once, ideally reverting
to subselect fetching for all but one of the bags.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira