[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-1661?page=c...
]
Mike Youngstrom commented on HHH-1661:
--------------------------------------
I agree I think this is incorrect merge behaviour. The javadocs for EntityManager.merge
says:
"IllegalArgumentException - if instance is not an entity or is a removed
entity"
This entity is clearly "not an entity or a removed entity" I agree. I think
this should not be re inserted.
Mike
merge of a deleted object results in a insert?
----------------------------------------------
Key: HHH-1661
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-1661
Project: Hibernate3
Type: Bug
Components: core
Versions: 3.1.3
Environment: Hibernate 3.1.3, SQL Server
Reporter: Tu-Thach
A persistent object is loaded from a session and deleted, then close the session. Using
that same object in another session and call merge results in the object being inserted
into the database. Here's the sample code:
Session session = factory.getCurrentSession();
session.beginTransaction();
MyClass obj = (MyClass)session.load(MyClass.class, new Integer(10));
session.delete(obj);
session.getTransaction().commit();
session = factory.getCurrentSession();
session.beginTransaction();
session.merge(obj);
session.getTransaction().commit();
Since the object is already deleted, merge could not find it and thus proceeds with a
INSERT. Shouldn't it throw an exception instead?
--
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