From 302b5385bd339a90dee442ff2e34b79712aba417 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 5586fd5b8..367aa4322 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 @@ -470,8 +470,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); } });