Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[eclipselink-users] current ChangeTrackingType

Hi,

I'm using payare 5.201 which uses eclipselink 2.7.

Weaving is enabled by default and I do not have any @ChangeTracking annotations in place which means eclipselink will choose these at runtime.
Now I have a problem where for some reason an update statement is missing a field.
I don't understand why but when I set

    @ChangeTracking(ChangeTrackingType.ATTRIBUTE)

on the related table then the problem disappears.
The related table also has some relations with eager fetchtype. 
When I set the fetchtype of those relations to LAZY it also works again.

My conclusion is that the related table has a different ChangeTrackingType. 
I'm assuming this happened because of the eager fetchtype I had in place and eclipselink chose a different ChangeTrackingType.

Questions:
  • how can I runtime 'ask' the system which ChangeTrackingType is used for a table.
  • are there debug settings where I can let eclipselink log these values per table?
  • how can a different ChangeTrackingType cause fields to be missed (other fields were updated ok)
    • I could reproduce this in a single thread
    • I confirmed that the entity object was registered to the entity manager
    • I confirmed that the value in the database was different
    • I confirmed that when leaving the method the value was changed
    • One thing to mention here is that this code executed in a @Asynchronous method
best regards,

Hans

Back to the top