[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-1661) merge of a deleted object results in a insert?
Mike Youngstrom (JIRA)
noreply at atlassian.com
Wed Oct 4 18:57:24 EDT 2006
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1661?page=comments#action_24720 ]
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.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list