У меня есть проблема при каскадном удалении моего родительского объекта:
org.postgresql.util.PSQLException: UPDATE или DELETE для таблицы "child" нарушает ограничение "XXX": для ключа (id) = (4) в таблице "child_properties" есть ссылки
@Entity
@Table(name = "Parent")
public class Parent{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@OneToMany(fetch = FetchType.EAGER,mappedBy = "parent")
@OnDelete(action = OnDeleteAction.CASCADE)
private Set<Child> children;
}
@Entity
@Table(name = "child")
public class Child{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToOne
@JoinColumn(name = "parent_id")
private Parent parent;
@ElementCollection(fetch = FetchType.EAGER)
private Map<String,String> properties;
}
Я ожидал, что child удалит свои свойства в parentRepository.delete (parent), но это происходит только в childRepository.delete (child). исключение родительского удаления создает исключение