postgresql/src/backend
Tom Lane ca07d7ebe0 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:30 -04:00
..
access Force archive_status of .done for xlogs created by dearchival/replication. 2012-08-08 23:58:49 +01:00
bootstrap Fix management of pendingOpsTable in auxiliary processes. 2012-07-18 15:28:17 -04:00
catalog Fix dependencies generated during ALTER TABLE ADD CONSTRAINT USING INDEX. 2012-08-11 12:51:30 -04:00
commands Fix dependencies generated during ALTER TABLE ADD CONSTRAINT USING INDEX. 2012-08-11 12:51:30 -04:00
executor Fix whole-row Var evaluation to cope with resjunk columns (again). 2012-07-20 13:09:10 -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 Run pgindent on 9.2 source tree in preparation for first 9.3 2012-06-10 15:20:04 -04:00
main Make documentation of --help and --version options more consistent 2012-06-18 02:47:53 +03:00
nodes Avoid pre-determining index names during CREATE TABLE LIKE parsing. 2012-07-16 13:25:26 -04:00
optimizer Account for SRFs in targetlists in planner rowcount estimates. 2012-07-21 17:45:15 -04:00
parser Fix WITH attached to a nested set operation (UNION/INTERSECT/EXCEPT). 2012-07-31 17:56:27 -04:00
po Translation updates 2012-08-02 23:01:01 +03:00
port Run pgindent on 9.2 source tree in preparation for first 9.3 2012-06-10 15:20:04 -04:00
postmaster Fix upper limit of superuser_reserved_connections, add limit for wal_senders 2012-08-10 14:51:57 +02:00
regex Prevent corner-case core dump in rfree(). 2012-07-15 13:28:01 -04:00
replication Turn off WalSender keepalives by default, users can enable if desired 2012-08-09 17:06:47 +01:00
rewrite Prevent CREATE TABLE LIKE/INHERITS from (mis) copying whole-row Vars. 2012-06-30 16:45:27 -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:32 -04:00
tcop Avoid pre-determining index names during CREATE TABLE LIKE parsing. 2012-07-16 13:25:26 -04:00
tsearch Run pgindent on 9.2 source tree in preparation for first 9.3 2012-06-10 15:20:04 -04:00
utils Fix redundant wording 2012-08-07 11:44:05 -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 Translation updates 2012-08-02 23:01:01 +03:00