You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cayenne.apache.org by Ken Anderson <ke...@amphorainc.com> on 2016/07/13 18:56:11 UTC

Multiple relationships from inheritance tree

Hello list!

I have a question about how/why something happens in the Cayenne Modeler (4.0M3).

When I have a DBEntity with a relationship to a super-entity and I sync it with its ObjEntity, the ObjEntity gets a relationship for every potential class under (and including) the target DBEntity’s ObjEntity.

Is this correct?  Can Cayenne not handle a relationship to a super entity?

It’s not clear if I should rename them (right now they’re named for the target DBEntity, then 1, 2, 3, etc).  Are they there just for internal management?

Thanks!

Ken

Ken Anderson
CTO Amphora, Inc.
Mobile:   +1 914 262 8540

[cid:image001.png@01D1DD16.B18BC040]

www.amphorainc.com<http://www.amphorainc.com/>

Confidentiality Notice: This e-mail and accompanying documents contain confidential information intended for a specific individual and purpose. This e-mailed information is private and protected by law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, or distribution, or the taking of any action based on the contents of this information, is strictly prohibited.

Re: Multiple relationships from inheritance tree

Posted by Andrus Adamchik <an...@objectstyle.org>.
Yeah, this should be fine.


> On Jul 28, 2016, at 3:55 PM, Ken Anderson <ke...@amphorainc.com> wrote:
> 
> Andrus,
> 
> What’s the correct version of the relationship?  I’m happy to do it manually as opposed to syncing it.  Should we just have a relationship to the base class?
> 
> Ken
> 
> Ken Anderson
> CTO Amphora, Inc.
> Mobile:   +1 914 262 8540
> 
> 
> 
> www.amphorainc.com <http://www.amphorainc.com/>
> 
> 
> 
> 
> On 7/27/16, 3:06 AM, "Andrus Adamchik" <an...@objectstyle.org> wrote:
> 
>    This is a known bug, and we already had a fix pending review:
> 
>    https://issues.apache.org/jira/browse/CAY-2070
>    https://github.com/apache/cayenne/pull/92
> 
>    So I did just that. It fixes the problem in my tests.
> 
>    Also note that it explicitly disables sync button for subentities, as it can't be made to work reliably with the current mapping approach. In the future (probably past 4.0) we are planning to allow setting an explicit root table for each v-inheritance subentitity, making sync possible again.
> 
>    Let me know if you need help with doing a fresh build of CayenneModeler from master. Such an upgrade will be a bit invasive though, as it bumps up the version of project XML, and will make your projects incompatible with earlier modeler versions.
> 
>    Andrus
> 
> 
>> On Jul 13, 2016, at 9:56 PM, Ken Anderson <ke...@amphorainc.com> wrote:
>> 
>> Hello list!
>> 
>> I have a question about how/why something happens in the Cayenne Modeler (4.0M3).
>> 
>> When I have a DBEntity with a relationship to a super-entity and I sync it with its ObjEntity, the ObjEntity gets a relationship for every potential class under (and including) the target DBEntity’s ObjEntity.
>> 
>> Is this correct?  Can Cayenne not handle a relationship to a super entity?
>> 
>> It’s not clear if I should rename them (right now they’re named for the target DBEntity, then 1, 2, 3, etc).  Are they there just for internal management?
>> 
>> Thanks!
>> 
>> Ken
>> 
>> Ken Anderson
>> CTO Amphora, Inc.
>> Mobile:   +1 914 262 8540
>> 
>> 
>> www.amphorainc.com
>> 
>> Confidentiality Notice: This e-mail and accompanying documents contain confidential information intended for a specific individual and purpose. This e-mailed information is private and protected by law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, or distribution, or the taking of any action based on the contents of this information, is strictly prohibited.
> 
> 
> 
> Confidentiality Notice: This e-mail and accompanying documents contain confidential information intended for a specific individual and purpose. This e-mailed information is private and protected by law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, or distribution, or the taking of any action based on the contents of this information, is strictly prohibited.


Re: Multiple relationships from inheritance tree

Posted by Ken Anderson <ke...@amphorainc.com>.
Andrus,

What’s the correct version of the relationship?  I’m happy to do it manually as opposed to syncing it.  Should we just have a relationship to the base class?

Ken

Ken Anderson
CTO Amphora, Inc.
Mobile:   +1 914 262 8540



www.amphorainc.com <http://www.amphorainc.com/>




On 7/27/16, 3:06 AM, "Andrus Adamchik" <an...@objectstyle.org> wrote:

    This is a known bug, and we already had a fix pending review:

    https://issues.apache.org/jira/browse/CAY-2070
    https://github.com/apache/cayenne/pull/92

    So I did just that. It fixes the problem in my tests.

    Also note that it explicitly disables sync button for subentities, as it can't be made to work reliably with the current mapping approach. In the future (probably past 4.0) we are planning to allow setting an explicit root table for each v-inheritance subentitity, making sync possible again.

    Let me know if you need help with doing a fresh build of CayenneModeler from master. Such an upgrade will be a bit invasive though, as it bumps up the version of project XML, and will make your projects incompatible with earlier modeler versions.

    Andrus


    > On Jul 13, 2016, at 9:56 PM, Ken Anderson <ke...@amphorainc.com> wrote:
    >
    > Hello list!
    >
    > I have a question about how/why something happens in the Cayenne Modeler (4.0M3).
    >
    > When I have a DBEntity with a relationship to a super-entity and I sync it with its ObjEntity, the ObjEntity gets a relationship for every potential class under (and including) the target DBEntity’s ObjEntity.
    >
    > Is this correct?  Can Cayenne not handle a relationship to a super entity?
    >
    > It’s not clear if I should rename them (right now they’re named for the target DBEntity, then 1, 2, 3, etc).  Are they there just for internal management?
    >
    > Thanks!
    >
    > Ken
    >
    > Ken Anderson
    > CTO Amphora, Inc.
    > Mobile:   +1 914 262 8540
    >
    >
    > www.amphorainc.com
    >
    > Confidentiality Notice: This e-mail and accompanying documents contain confidential information intended for a specific individual and purpose. This e-mailed information is private and protected by law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, or distribution, or the taking of any action based on the contents of this information, is strictly prohibited.



Confidentiality Notice: This e-mail and accompanying documents contain confidential information intended for a specific individual and purpose. This e-mailed information is private and protected by law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, or distribution, or the taking of any action based on the contents of this information, is strictly prohibited.

Re: Multiple relationships from inheritance tree

Posted by Andrus Adamchik <an...@objectstyle.org>.
This is a known bug, and we already had a fix pending review:

https://issues.apache.org/jira/browse/CAY-2070
https://github.com/apache/cayenne/pull/92

So I did just that. It fixes the problem in my tests. 

Also note that it explicitly disables sync button for subentities, as it can't be made to work reliably with the current mapping approach. In the future (probably past 4.0) we are planning to allow setting an explicit root table for each v-inheritance subentitity, making sync possible again.

Let me know if you need help with doing a fresh build of CayenneModeler from master. Such an upgrade will be a bit invasive though, as it bumps up the version of project XML, and will make your projects incompatible with earlier modeler versions.

Andrus


> On Jul 13, 2016, at 9:56 PM, Ken Anderson <ke...@amphorainc.com> wrote:
> 
> Hello list!
>  
> I have a question about how/why something happens in the Cayenne Modeler (4.0M3).
>  
> When I have a DBEntity with a relationship to a super-entity and I sync it with its ObjEntity, the ObjEntity gets a relationship for every potential class under (and including) the target DBEntity’s ObjEntity.
>  
> Is this correct?  Can Cayenne not handle a relationship to a super entity?
>  
> It’s not clear if I should rename them (right now they’re named for the target DBEntity, then 1, 2, 3, etc).  Are they there just for internal management?
>  
> Thanks!
>  
> Ken
>  
> Ken Anderson
> CTO Amphora, Inc.
> Mobile:   +1 914 262 8540
>  
> 
> www.amphorainc.com
>  
> Confidentiality Notice: This e-mail and accompanying documents contain confidential information intended for a specific individual and purpose. This e-mailed information is private and protected by law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, or distribution, or the taking of any action based on the contents of this information, is strictly prohibited.