[
https://issues.apache.org/jira/browse/OPENJPA-2925?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17929375#comment-17929375
]
ASF subversion and git services commented on OPENJPA-2925:
----------------------------------------------------------
Commit 45baaf7a834e4f8edf903f3b38f98d55a27a1e09 in openjpa's branch
refs/heads/solomax/OPENJPA-2925 from Maxim Solodovnik
[ https://gitbox.apache.org/repos/asf?p=openjpa.git;h=45baaf7a8 ]
[OPENJPA-2925] Tests for issue
> Accessing a non-recursive relation of an instance that has been loaded via a
> recursive relation may produce wrong result
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: OPENJPA-2925
> URL: https://issues.apache.org/jira/browse/OPENJPA-2925
> Project: OpenJPA
> Issue Type: Bug
> Affects Versions: 3.2.2, 4.0.0
> Reporter: Juho Rinta-Paavola
> Priority: Major
>
> Given the entities
> {code:java}
> @Entity
> public class Cat {
> @Id
> @GeneratedValue
> private int id;
> @OneToMany(mappedBy = "parent", fetch = FetchType.EAGER)
> private List<Cat> children = new ArrayList<>();
> @ManyToOne
> private Cat parent;
> @ManyToOne
> private Human human;
> }{code}
> and
> {code:java}
> @Entity
> public class Human {
> @Id
> @GeneratedValue
> private int id;
> private String name;
> @OneToMany(mappedBy = "human", fetch = FetchType.EAGER)
> private List<Cat> cats = new ArrayList<>();
> } {code}
> Calling {{kitten.getParent().getHuman()}} will return the kitten's human
> instead of the expected parent's human, if the kitten has a sibling and both
> kittens belong to the same human.
> Failing unit test is available at
> https://github.com/jrp6/openjpa/blob/openjpa-2925/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/recursive/TestRecursiveThenNonRecursiveRelationship.java
--
This message was sent by Atlassian Jira
(v8.20.10#820010)