Jadon Hansell created CAY-2890:
----------------------------------

             Summary: Vertical Inheritance: Updating 1-Many with FK on Child 
Table Fails
                 Key: CAY-2890
                 URL: https://issues.apache.org/jira/browse/CAY-2890
             Project: Cayenne
          Issue Type: Bug
    Affects Versions: 4.2.2, 5.0-M2
            Reporter: Jadon Hansell


If there is a one-to-many relationship where the foreign key is on the child 
table in a vertical inheritance scenario, updating the relationship will 
sometimes delete the row on the child table or try to insert a row with mostly 
null values into the child table instead of updating it.

The issue seems to happen when the update to the has-many side of the 
relationship is processed first in 
`ArcValuesCreationHandler.processFlattenedPath`. When the update to the 
belongs-to side of the relationship is processed first it issues an update as 
normal, then skips the has-many side because the inverse relationship has 
already been processed.

As a side note, when I implemented a breaking test for this, on one of the test 
cases cases the GraphBasedDbRowOpSorter throws an error saying that there is a 
`Cycle detected in list for keys`.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to