On 3 April 2016 at 22:44, Simon Riggs <si...@2ndquadrant.com> wrote:
> Detailed comments in the planner part of the patch. The discussion around
> this patch isn't reflected enough in the patch.
I think we should record that the planner uses the constraint, even if the
constraint is not yet valid, per DDL.
The rel cache code you're adding uses a flag called "rd_fkeyvalid" which
indicates that the relcache is correctly filled. That is confusing, since
it has nothing to do with the concept of constraint validity. We should
rename that to rd_fkeycachefilled or similar.
ISTM that the FKey info added to the rel cache would be useful for many
optimizations, hence why I think we should commit that separately, whether
or not the specific optimization for the other half of the patch is
accepted or later modified or revoked. Objections?
Simon Riggs http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services