Re: postgres optimizer - Mailing list pgsql-general

From Tom Lane
Subject Re: postgres optimizer
Date
Msg-id 9267.1125069531@sss.pgh.pa.us
Whole thread Raw
In response to postgres optimizer  ("Hossein S. Attar" <mhsheikh@softbase.math.uwaterloo.ca>)
Responses Re: postgres optimizer  ("Joshua D. Drake" <jd@commandprompt.com>)
List pgsql-general
"Hossein S. Attar" <mhsheikh@softbase.math.uwaterloo.ca> writes:
> I am working on postgres optimizer code to add some statistics
> collection features for an academic project. At some point in my work, I
> need to be able to tell if a join is a foreign key join or not. Also in
> case of a foreign key join, I need to identify which input to the join
> operator has the primary key attribute and which one has teh foreign
> key. In other words, when we are making a JoinPath struct, I need to
> identify if the join between the inner and outer RelOptInfo structs is a
> foreign key join and if so, which RelOptInfo has the primary key. Does
> anyone know the best way to do this? Should I go to "joinrestrictinfo"
> field and go over all expressions? Is there any easier way?

The planner doesn't think there is any such thing as a "foreign key
join".  Perhaps you should modify the foreign key triggers (in
ri_triggers.c) to collect the information you need.

            regards, tom lane

pgsql-general by date:

Previous
From: "Magnus Hagander"
Date:
Subject: Re: Problems Reinstalling PostgreSQL on XP
Next
From: Mike Nolan
Date:
Subject: TG_OP and undefined OLD values