cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrus Adamchik <and...@objectstyle.org>
Subject Re: Inheritance Question
Date Fri, 20 Dec 2013 08:25:01 GMT
If your result list is not expected to contain ClassTwo objects, you won’t see any blobs.
But if it is - you will get fully resolved ClassTwo objects, including the BLOB attribute.

So perhaps BLOB should be placed in a separate table and lazily resolved via relationship?

Andrus

On Dec 20, 2013, at 10:49 AM, dollj@xsinet.co.za wrote:

> Thanks for asking Andrus:
> 
> Because ClassTwo contains a BLOB that I don't want retrieved when asking for ClassOne
objects.
> 
> Jurgen
> 
> 
> -----Original Message----- From: Andrus Adamchik
> Sent: Friday, December 20, 2013 8:58 AM
> To: user@cayenne.apache.org
> Subject: Re: Inheritance Question
> 
> No.
> 
> But a question though - if the result set only contains ClassOne rows, why would you
care about inclusion of all those extra columns in the SELECT?
> 
> Andrus
> 
> On Dec 20, 2013, at 9:50 AM, dollj@xsinet.co.za wrote:
> 
>> Thanks for your reply Andrus.
>> 
>> I don't suppose that there is a way to tell Cayenne not to be so eager in this case
?
>> 
>> Jurgen
>> 
>> 
>> -----Original Message----- From: Andrus Adamchik
>> Sent: Friday, December 20, 2013 8:27 AM
>> To: user@cayenne.apache.org
>> Subject: Re: Inheritance Question
>> 
>> From what I can tell, this is the intended behavior. If your SelectQuery root is
ClassOne, Cayenne expects that the result might contain a mix of ClassOne and any of its subclasses
(which means ClassTwo as well). So the columns in SELECT are a superset of columns for all
the classes involved.
>> 
>> Andrus
>> 
>> 
>> On Dec 12, 2013, at 12:30 PM, dollj@xsinet.co.za wrote:
>>> Hi All
>>> 
>>> I have a dbEntity say ClassOne (its lightweight) and another that inherits from
it as ClassTwo (its heavyweight).
>>> 
>>> Now in my case I have a prefetch that retrieves ClassOne objects.
>>> 
>>> The problem that I have is that Cayenne is fetching ClassTwo data as well ?!
>>> 
>>> Surely Cayenne should only be fetching the ClassOne data, why is ClassTwo data
also being retrieved ?
>>> 
>>> Is this the intended behaviour ?   Is there a way to prevent it ?
>>> 
>>> Thanks, Jurgen
>>> 
>>> 
>>> 
>> 
>> 
> 
> 


Mime
View raw message