You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Matt Watson (JIRA)" <ji...@apache.org> on 2017/03/06 19:17:32 UTC

[jira] [Created] (CAY-2256) Cannot Save/Insert an Object With null Flattened (complex) toOne Relationship

Matt Watson created CAY-2256:
--------------------------------

             Summary: Cannot Save/Insert an Object With null Flattened (complex) toOne Relationship
                 Key: CAY-2256
                 URL: https://issues.apache.org/jira/browse/CAY-2256
             Project: Cayenne
          Issue Type: Bug
          Components: Core Library
    Affects Versions: 4.0.M4
            Reporter: Matt Watson
         Attachments: breaking-test.patch

When using a Flattened complex join for a toOne Relationship... if you do not set the relationship the {{validateForSave}} on {{CayenneDataObject}} incorrectly attaches a {{ValidationFailure}} saying that the relationship is required.

Prior to M4 this worked correctly, but the commit fixing CAY-2146 introduced this issue. More directly the line of code holding the IF statement below was updated to check the db.Rels.size().

{code:title= CayenneDataObject.java|borderStyle=solid}
if (dbRels.size() == 1 && relationship.isSourceIndependentFromTargetChange()) {
    continue;
}
{code}

While putting this code back makes the test for this issue pass, it obviously makes the test for CAY-2146 FAIL, so I'm not suggesting to put it back, but just pointing it out in case it helps better understand this issue.

(see attached breaking-test.patch)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)