| Summary: | Duplicate CascadeLockingPolicy instances added to private owned child | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | z_Archived | Reporter: | David Minsky <david.minsky> | ||||||
| Component: | Eclipselink | Assignee: | Nobody - feel free to take it <nobody> | ||||||
| Status: | RESOLVED FIXED | QA Contact: | |||||||
| Severity: | normal | ||||||||
| Priority: | P3 | ||||||||
| Version: | unspecified | ||||||||
| Target Milestone: | --- | ||||||||
| Hardware: | All | ||||||||
| OS: | All | ||||||||
| Whiteboard: | |||||||||
| Attachments: |
|
||||||||
Created attachment 193091 [details]
Proposed fix, and testcase
Created attachment 193183 [details]
Proposed fix, and testcase - refactored
Reviewed: Andrei Ilitchev Checked into trunk (2.3) at revision: 9230 The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink |
Problem description: - Two descriptors ("A" & "B") reference a third child descriptor ("C")(privately owned), with cascade locking (& version locking) - Child descriptor ("C") references another descriptor ("D") (privately owned) - Depending on the order of descriptor initialization, descriptor D can contain 2 duplicate cascade locking policy instances, because both A and B reference its parent C - This increases SQL traffic to the DB, as duplicate lookups are performed when changes are detected for D - D should only have one cascade locking policy to minimize SQL calls