This sounds very nice… To do a little dreaming, it would be even more awesome if property lazyness was controllable on a per-query basis, usage requirements tend to be quite dependent on context.
A bit like a ColumnSelect that still allows you to keep all your fancy DataObject business logic intact :). ObjectSelect .query( BigEntity.class ) .lazyProperties( BigEntity.HUGE_IMAGE, BigEntity.MASSIVE_STRING ) - hugi > On 29 Nov 2019, at 15:25, Michael Gentry <blackn...@gmail.com> wrote: > > Well, we can't always control the DB schema we have to interface with... > > > On Fri, Nov 29, 2019 at 5:30 AM Maik Musall <m...@selbstdenker.ag> wrote: > >> I’ll add a little caveat though. If a query hits lots of rows and thus the >> optimizer decides to do a full table scan (or a partition scan), the >> database could still end up having to read the blobs from disk, only >> omitting them in the returned results. So there may still be >> performance-related reasons to keep such blobs in separate entities (or >> elsewhere), depending on the specific RDBMS and it’s configuration. >> >>> Am 29.11.2019 um 07:07 schrieb Lon Varscsak <lon.varsc...@gmail.com>: >>> >>> Yeah, it's a great idea. >>> >>> On Thu, Nov 28, 2019 at 6:06 AM Maik Musall <m...@selbstdenker.ag> >> wrote: >>> >>>> +1 sounds very useful to simplify the data model here and there >>>> >>>>> Am 27.11.2019 um 13:06 schrieb Michael Gentry <blackn...@gmail.com>: >>>>> >>>>> I just happened across an article on Hibernate which talks about lazy >>>>> attributes. (A recent addition, I think.) This essentially allows you >>>> to >>>>> flag an attribute/column as lazy and it'll be excluded from the >> original >>>>> SELECT query, but if you call the getter it will then fetch it in. >> This >>>> is >>>>> convenient for BLOB-type data that might happen to be in a main table >>>> with >>>>> other attributes (such as MIME types, file sizes, file names, etc). >>>>> >>>>> Thoughts on maybe adding this feature to Cayenne? I can imagine >> there'd >>>> be >>>>> a "Lazy" column in Cayenne Modeler for the attributes to >> control/identify >>>>> them. >>>>> >>>>> Thanks, >>>>> >>>>> mrg >>>> >>>> >> >>