Bidirectional OneToOne relation incorrectly set in loadEagerJoin
----------------------------------------------------------------
Key: OPENJPA-925
URL: https://issues.apache.org/jira/browse/OPENJPA-925
Project: OpenJPA
Issue Type: Bug
Affects Versions: 1.2.0, 1.2.1, 1.3.0, 2.0.0-M1, 2.0.0
Reporter: Catalina Wei
Assignee: Catalina Wei
A test scenario uncovers a bug in eager loading bidirectional OneToOne relation.
OneOneParent has a bidirectional OneToOne relation with OneOneChild as
annotated as following:
@Entity
public class OneOneParent {
...
@OneToOne(mappedBy="parent")
private OneOneChild child;
}
@Entity
public class OneOneChild {
...
@OneToOne
private OneOneParent parent;
}
Testcase:
String query = "select c FROM OneOneChild c";
Query q = em.createQuery(query);
List list = q.getResultList();
for (int i = 0; i < list.size(); i++) {
OneOneChild c = (OneOneChild) list.get(i);
assertEquals(c, c.getParent().getChild());
}
We expect c equals c.getParent().getChild(), but instead got assertion failure.
It seems to be a bug introduced in performance improvement work (the related
issues: OPENJPA-292 & OPENJPA-744).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.