----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/74065/ -----------------------------------------------------------
(Updated Aug. 1, 2022, 12:30 p.m.) Review request for atlas, Jayendra Parab and Pinal Shah. Bugs: ATLAS-4615 https://issues.apache.org/jira/browse/ATLAS-4615 Repository: atlas Description ------- Problem Statement : Given a custom entity that defines an array attribute of another custom type, any removed elements always appear in the array Diffs ----- repository/src/main/java/org/apache/atlas/repository/store/graph/v2/EntityGraphRetriever.java a8fe5a762 repository/src/test/java/org/apache/atlas/repository/store/graph/v2/InverseReferenceUpdateSoftDeleteV2Test.java afa1c5991 repository/src/test/java/org/apache/atlas/repository/store/graph/v2/InverseReferenceUpdateV2Test.java d01ea3043 webapp/src/test/java/org/apache/atlas/web/adapters/TestEntityREST.java 6a00c1764 Diff: https://reviews.apache.org/r/74065/diff/3/ Testing ------- Manual testing done as follows: created a custom type "Tab" created 4 entities of this type : tab1,tab2,tab3 and tab4 created another custom type "Alphatab" having an attribute "tabArray" of type array<Tab> created entity ATEntity of type Alphatab with tabArray = {tab1, tab2} //add an element and remove an element from array updated ATEntity with tabArray = {tab1, tab3} // add back removed element to array updated ATEntity with tabArray = {tab1, tab2, tab3} // delete an entity in the array by its guid deleted tab2; size of array doesnt change yet (tab2 is soft deleted) //removed 2 and added 1 element updated ATEntity with tabArray = {tab3, tab4} //remove one add 2 elements updated ATEntity with tabArray = {tab1, tab2, tab3} //elements returned by getById(guid) mwthod will return an array of only ACTIVE edges (DELETEd edges will be ignored) size of array = number of active edges Note : Following test cases have been edited to accomodate the feature change(set ignoreInactive=true as default) 1.org.apache.atlas.repository.store.graph.v2.InverseReferenceUpdateV2Test 2.org.apache.atlas.repository.store.graph.v2.InverseReferenceUpdateSoftDeleteV2Test Thanks, Sheetal Shah