Re: Functional dependencies and GROUP BY
Peter Eisentraut <peter_e@gmx.net>
From: Peter Eisentraut <peter_e@gmx.net>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Dean Rasheed <dean.a.rasheed@gmail.com>, Alex Hunsaker <badalex@gmail.com>, pgsql-hackers@postgresql.org
Date: 2010-09-05T18:28:10Z
Lists: pgsql-hackers
On sön, 2010-09-05 at 11:35 -0400, Tom Lane wrote: > Dean Rasheed <dean.a.rasheed@gmail.com> writes: > > On 5 September 2010 16:15, Tom Lane <tgl@sss.pgh.pa.us> wrote: > >> I don't recall having thought about it one way or the other. What did > >> the check look like? > > > Well originally it was searching indexes rather than constraints, and > > funcdeps_check_pk() included the following check: > > > if (!indexStruct->indisprimary || !indexStruct->indimmediate) > > continue; > > > Now its looping over pg_constraint entries, so I guess anything wtih > > con->condeferrable == true should be ignored. > > Seems reasonable, will fix. Thanks for the report! Yes, the SQL standard explicitly requires the constraint in question to be immediate.