From 1ac36603f7507a80eb81550d24cf40b657f5b892 Mon Sep 17 00:00:00 2001 From: Gerrit Meier Date: Wed, 18 Jan 2023 11:28:17 +0100 Subject: [PATCH] GH-2655 - Find child relationships reliable. Don't exclude relationships only by their field name but also by their target entity. --- .../data/neo4j/core/mapping/DefaultNeo4jPersistentEntity.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/springframework/data/neo4j/core/mapping/DefaultNeo4jPersistentEntity.java b/src/main/java/org/springframework/data/neo4j/core/mapping/DefaultNeo4jPersistentEntity.java index 3f2eec611..80a11355f 100644 --- a/src/main/java/org/springframework/data/neo4j/core/mapping/DefaultNeo4jPersistentEntity.java +++ b/src/main/java/org/springframework/data/neo4j/core/mapping/DefaultNeo4jPersistentEntity.java @@ -482,8 +482,9 @@ final class DefaultNeo4jPersistentEntity extends BasicPersistentEntity { String fieldName = concreteRelationship.getFieldName(); + NodeDescription target = concreteRelationship.getTarget(); - if (relationships.stream().noneMatch(relationship -> relationship.getFieldName().equals(fieldName))) { + if (relationships.stream().noneMatch(relationship -> relationship.getFieldName().equals(fieldName) && relationship.getTarget().equals(target))) { relationships.add(concreteRelationship); } });