openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Struberg <strub...@yahoo.de>
Subject Re: [jira] Updated: (OPENJPA-1873) EntityManager#merge sometimes passes wrong entity values to @PostLoad EntityListeners
Date Tue, 09 Nov 2010 16:45:18 GMT
Btw, I just recognised that 
mvn clean install -Dmaven.test.skip=true is now working because the openjpa-maven-plugin still
tries to test enhance the classes (which are not there in this case). I will fix this tonight
(or tomorrow) and deploy a fresh snapshot to the codehaus repo.

LieGrue,
strub

--- On Tue, 11/9/10, Mark Struberg (JIRA) <jira@apache.org> wrote:

> From: Mark Struberg (JIRA) <jira@apache.org>
> Subject: [jira] Updated: (OPENJPA-1873) EntityManager#merge sometimes passes wrong entity
values to @PostLoad EntityListeners
> To: dev@openjpa.apache.org
> Date: Tuesday, November 9, 2010, 4:33 PM
> 
>      [ https://issues.apache.org/jira/browse/OPENJPA-1873?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
> ]
> 
> Mark Struberg updated OPENJPA-1873:
> -----------------------------------
> 
>     Attachment: postloadtest.zip
> 
> Hi! Just verified that @PostLoad gets fired in Hibernate.
> See the attached little maven project.
> 
> > EntityManager#merge sometimes passes wrong entity
> values to @PostLoad EntityListeners 
> >
> --------------------------------------------------------------------------------------
> >
> >             
>    Key: OPENJPA-1873
> >             
>    URL: https://issues.apache.org/jira/browse/OPENJPA-1873
> >         
>    Project: OpenJPA
> >          Issue Type: Bug
> >          Components: kernel
> >    Affects Versions: 2.0.0, 2.0.1, 2.0.2
> >            Reporter:
> Mark Struberg
> >         Attachments:
> OPENJPA-1873-unittest.patch, postloadtest.zip
> >
> >
> > I've tested this with the latest from branches/2.0.x.
> > My entity has an @EntityListeners which observes the
> @PostLoad lifecycle event. This listener stores the 'old'
> values from the database for later use (see http://struberg.wordpress.com/2010/07/31/howto-changelog-with-jpa/
> for the intention behind). All works well if the table has
> only a few rows. But if you add more rows, OpenJPA tries to
> optimize the access and only loads the @Version field + the
> dirty fields. In this case the merging seems to be wrong,
> because I get the NEW values from the dirty fields instead
> of the original values from the database passed to my
> @PostLoad method.
> > Did cost me a few grey hairs to track down the
> differences between the working and the broken scenarios
> here ;) But finally I was able to creat a unit test showing
> the problem
> 
> -- 
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue
> online.
> 
> 


      

Mime
View raw message