cayenne-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrus Adamchik <>
Subject Re: Vertical inheritance
Date Mon, 31 May 2010 12:29:03 GMT
Great. this is the kind of feedback I was looking for :-)

On May 31, 2010, at 8:17 AM, Mike Kienenberger wrote:
> What you're suggesting could work, but we have at least one very deep
> and wide inheritance tree in our current app, and the performance hit
> of joining more than a hundred tables (so far) unnecessarily would
> kill us.

So how would you do a fetch based on discriminator column approach? I  
can think of a 2 step process:

1. Fetch ID's + discriminator columns from the root table.
2. Fully resolve objects, either doing joins only for the subset of  
tables that appeared in result in #1, or doing a separate query  
(without joins) for each subclass table matching the set of IDs.

Does that sound right?

Also I am sort of in favor of my original discriminator-free approach  
for smaller hierarchies, so wonder if a fetch strategy can be  
something specified for a given super-entity and/or query.


View raw message