[ https://issues.apache.org/jira/browse/CAY-2890?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jadon Hansell updated CAY-2890: ------------------------------- Attachment: 2890-breaking-tests.patch > 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 > Priority: Major > Attachments: 2890-breaking-tests.patch > > > 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)