• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: EO inheritance + Oracle
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: EO inheritance + Oracle


  • Subject: Re: EO inheritance + Oracle
  • From: Jon Nolan <email@hidden>
  • Date: Tue, 22 Mar 2011 18:51:36 -0600
  • Organization: Loch Garman

Hi Chuck.

Yes, I'm using 2-3 week old Wonder and there's no IN qualifier in play.  I don't think the Oracle optimizer likes that either although I'll definitely give it a trial.

I'm still trying to get /*+ rule */ to work.  I think that's my best bet.

Jon

On 3/22/11 5:47 PM, Chuck Hill wrote:
Are you using Wonder?  I thought that Wonder would collapse these into an IN.  Oracle might be more inclined to optimize that.  It might be that the Wonder qualifier support is not used for inheritance. You might try running the SQL for that and see if the Oracle optimizer will play nice.


You could try an ERXInQualifier, but I think that EOF is still going to want the restricting qualifiers.


Chuck


On Mar 22, 2011, at 4:31 PM, Jon Nolan wrote:

I have a fairly involved EO inheritance tree that works beautifully in every way but one.  Here's a quick example illustrating the structure I'm using:

Human
    North American
        American
        Canadian
        Mexican
    European
        German
        Italian
        Spaniard
    Asian
        Korean
        Laotian

etc.  You get the idea.

So if I utilize European.fetchEuropeans(...) a qualifier is generated along the lines of HUMAN_TYPE = German or HUMAN_TYPE = Italian or HUMAN_TYPE = Spaniard.  This would be fine except for the Oracle optimizer deciding not to use the HUMAN_TYPE_IDX index.  I've tried using hints but (a) it's difficult to get right for a query generated by a ERXBatchingDisplayGroup and (b) the JDBC adaptor disconnects me when I try.

There is another qualifier clause which happens to make it so that, in the European example, all the returned humans will indeed be German, Italian or Spaniard.  Is there any way to simply discard the OR'd HUMAN_TYPE qualifier?  Any other suggestions?  Do I have something wrong in my model in the first place?

Thanks,
Jon
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden

_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >EO inheritance + Oracle (From: Jon Nolan <email@hidden>)
 >Re: EO inheritance + Oracle (From: Chuck Hill <email@hidden>)

  • Prev by Date: Re: EO inheritance + Oracle
  • Next by Date: Re: EO inheritance + Oracle
  • Previous by thread: Re: EO inheritance + Oracle
  • Next by thread: Re: EO inheritance + Oracle
  • Index(es):
    • Date
    • Thread