postgresql/src/backend
Tom Lane b53800355f Fix dependencies generated during ALTER TABLE ADD CONSTRAINT USING INDEX.
This command generated new pg_depend entries linking the index to the
constraint and the constraint to the table, which match the entries made
when a unique or primary key constraint is built de novo.  However, it did
not bother to get rid of the entries linking the index directly to the
table.  We had considered the issue when the ADD CONSTRAINT USING INDEX
patch was written, and concluded that we didn't need to get rid of the
extra entries.  But this is wrong: ALTER COLUMN TYPE wasn't expecting such
redundant dependencies to exist, as reported by Hubert Depesz Lubaczewski.
On reflection it seems rather likely to break other things as well, since
there are many bits of code that crawl pg_depend for one purpose or
another, and most of them are pretty naive about what relationships they're
expecting to find.  Fortunately it's not that hard to get rid of the extra
dependency entries, so let's do that.

Back-patch to 9.1, where ALTER TABLE ADD CONSTRAINT USING INDEX was added.
2012-08-11 12:51:24 -04:00
..
access Fix minor bug in XLogFileRead() that accidentally worked. 2012-08-08 21:25:23 +01:00
bootstrap Fix management of pendingOpsTable in auxiliary processes. 2012-07-18 15:28:10 -04:00
catalog Fix dependencies generated during ALTER TABLE ADD CONSTRAINT USING INDEX. 2012-08-11 12:51:24 -04:00
commands Fix dependencies generated during ALTER TABLE ADD CONSTRAINT USING INDEX. 2012-08-11 12:51:24 -04:00
executor Fix whole-row Var evaluation to cope with resjunk columns (again). 2012-07-20 13:10:58 -04:00
foreign Add GetForeignColumnOptions() to foreign.c, and add some documentation. 2012-03-07 18:20:58 -05:00
lib Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
libpq Support having multiple Unix-domain sockets per postmaster. 2012-08-10 17:27:15 -04:00
main Unify calling conventions for postgres/postmaster sub-main functions 2012-06-25 21:30:12 +03:00
nodes Implement SQL-standard LATERAL subqueries. 2012-08-07 19:02:54 -04:00
optimizer Centralize the logic for detecting misplaced aggregates, window funcs, etc. 2012-08-10 11:36:15 -04:00
parser Centralize the logic for detecting misplaced aggregates, window funcs, etc. 2012-08-10 11:36:15 -04:00
po Translation updates 2011-08-17 14:07:46 +03:00
port Remove misleading hints about reducing the System V request size. 2012-07-03 10:07:47 -04:00
postmaster Update overlooked comment. 2012-08-10 17:36:54 -04:00
regex Prevent corner-case core dump in rfree(). 2012-07-15 13:27:54 -04:00
replication Turn off WalSender keepalives by default, users can enable if desired 2012-08-09 17:07:03 +01:00
rewrite Centralize the logic for detecting misplaced aggregates, window funcs, etc. 2012-08-10 11:36:15 -04:00
snowball Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
storage Only allow autovacuum to be auto-canceled by a directly blocked process. 2012-07-26 14:29:22 -04:00
tcop Support having multiple Unix-domain sockets per postmaster. 2012-08-10 17:27:15 -04:00
tsearch Make new event trigger facility actually do something. 2012-07-20 11:39:01 -04:00
utils Support having multiple Unix-domain sockets per postmaster. 2012-08-10 17:27:15 -04:00
.gitignore Add gitignore for mingw/cygwin build outputs 2011-06-09 18:11:47 +02:00
common.mk Call check_keywords.pl in maintainer-check 2012-02-27 13:53:12 +02:00
Makefile Fix incorrect make maintainer-clean rule. 2012-04-07 18:16:50 -04:00
nls.mk Sort file list when creating gettext-files 2011-12-27 20:20:56 +02:00