[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-3332?page=c...
]
Mike Ressler commented on HHH-3332:
-----------------------------------
I ran into this using version 3.3.1.
The workaround I'm using at the moment is to add the child to the beginning of the
list. So the code in the example would be:
Child c = new Child();
c.setFather(f);
f.getChildList().add(0, c);
This is working for me at the moment. I'm surprised this bug has been open for so
long.
Hibernate duplicate then child entity's on merge
------------------------------------------------
Key: HHH-3332
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-3332
Project: Hibernate Core
Issue Type: Bug
Affects Versions: 3.2.6
Environment: JDK 1.6
Oracle 9i
Hibernate 3.2.6
Hibernate Annotations 3.3.1
Hibernate EntityManager 3.3.2
Standalone Running
Reporter: Rodrigo de Assumpção
Priority: Critical
Attachments: ExampleBug.zip
The method merge from EntityManager causes a duplication of child entity's.
class Father:
@OneToMany(mappedBy = "father", cascade={CascadeType.ALL},
fetch=FetchType.LAZY)
private List<Child> childList;
class Child:
@ManyToOne @JoinColumn(name = "ID_FATHER")
private Father father;
class BugTest
EntityManagerFactory emf =
Persistence.createEntityManagerFactory("JpaTestHB");
EntityManager em = emf.createEntityManager();
Father f = (Father) em.createQuery("SELECT f FROM Father f WHERE f.id =
1").getSingleResult();
Child c = new Child();
c.setFather(f);
f.getChildList().add(c);
em.getTransaction().begin();
em.merge(f);
em.getTransaction().commit();
The execution of BugTest Class causes tow insert's on table "child".
If you change the fetch mode to EAGER (into Father class) the problem not occurs.
I make the same test with Toplink, and it make a unique insert, normal.
--
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