charles shen created ATLAS-3546:
-----------------------------------
Summary: isOptional for composition relationship category?
Key: ATLAS-3546
URL: https://issues.apache.org/jira/browse/ATLAS-3546
Project: Atlas
Issue Type: Improvement
Components: atlas-core
Affects Versions: 2.0.0
Reporter: charles shen
I noticed since [ATLAS-3051|https://issues.apache.org/jira/browse/ATLAS-3051],
the relationship attribute must be specified in the end def which is not
container and relationship category is composition.
I understand it's to prohibit orphan children but is it too strong? Reason
below:
# I have to provide all the entities along the relationship path in the
payload when creating a child, eg, for RDBMS, I have to provide rdbms_instance,
rdbms_db, rdbms_table, rdbms_column where I just want to create a single
rdbms_column, it brings performance overhead to check existence of
rdbms_instance, rdbms_db, etc...,
# I have defined a composition relationship type where each end is the same
entity type, it couldn't be created successfully anymore since it always
requires the mandatory attribute where it's the same type and then falls into
infinite loop.
Three possible fixes:
# Remove the isOptional constraint, since ownedRef/inverseRef doesn't have
such constraint.
# Add isOptional to relationship type end def.
# Add option in Rest to ignore the isOptional constraint for relationship type.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)