Madhan Neethiraj created ATLAS-3043:
---------------------------------------

             Summary: Unique attributes constraint at store-level
                 Key: ATLAS-3043
                 URL: https://issues.apache.org/jira/browse/ATLAS-3043
             Project: Atlas
          Issue Type: Bug
          Components:  atlas-core
            Reporter: Madhan Neethiraj
            Assignee: Madhan Neethiraj


Atlas data-model allows marking an attribute as unique; and on entity 
create/update operations, Atlas verifies that this constraint is not violated 
i.e. no more than one *active* entity of a given entity-type can have same 
value for a unique-attribute.

However, no store-level constraint is created to enforce uniqueness. This is 
likely to be due to the fact that there can be multiple *deleted* entities with 
the same typeName & unique-attribute value. And having such store-level 
constraint wouldn't allow this to exist.

An alternate approach is to create a 'shadow-property' at the store-level for 
the unique-attribute; and this property should be set only for active entities. 
When an entity is deleted, this 'shadow-property' will be removed from the 
entity-vertex. In this approach, the unique-constraint can be set at the store 
level for the 'shadow-property'. In addition to enforcing the constraint at the 
store level, it might also help in quicker entity-retrieval given typeName and 
unique-attribute.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to