postgresql/src/backend/commands
Tom Lane df87074092 Improve conversion of legacy CREATE CONSTRAINT TRIGGER representation of
foreign keys, one more time.  Insist on matching up all three triggers before
we create a constraint; this will avoid creation of duplicate constraints
in scenarios where a broken FK constraint was repaired by re-adding the
constraint without removing the old partial trigger set.  Basically, this will
work nicely in all cases where the FK was actually functioning correctly in
the database that was dumped.  It will fail to restore an FK in just one case
where we theoretically could restore it: where we find the referenced table's
triggers and not the referencing table's trigger.  However, in such a scenario
it's likely that the user doesn't even realize he still has an FK at all
(since the more-likely-to-fail cases aren't enforced), and we'd probably not
accomplish much except to cause the reload to fail because the data doesn't
meet the FK constraint.  Also make the NOTICE logging still more verbose, by
adding detail about which of the triggers were found.  This seems about all
we can do without solving the problem of getting the user's attention at
session end.
2007-11-05 19:00:25 +00:00
..
Makefile Tsearch2 functionality migrates to core. The bulk of this work is by 2007-08-21 01:11:32 +00:00
aggregatecmds.c Support enum data types. Along the way, use macros for the values of 2007-04-02 03:49:42 +00:00
alter.c Tsearch2 functionality migrates to core. The bulk of this work is by 2007-08-21 01:11:32 +00:00
analyze.c Rearrange vacuum-related bits in PGPROC as a bitmask, to better support 2007-10-24 20:55:36 +00:00
async.c RESET SESSION, plus related new DDL commands. Patch from Marko Kreen, 2007-04-12 06:53:49 +00:00
cluster.c Disallow CLUSTER using an invalid index (that is, one left over from a failed 2007-09-29 18:05:20 +00:00
comment.c Tsearch2 functionality migrates to core. The bulk of this work is by 2007-08-21 01:11:32 +00:00
conversioncmds.c Fix up foreign-key mechanism so that there is a sound semantic basis for the 2007-02-14 01:58:58 +00:00
copy.c Perform post-escaping encoding validity checks on SQL literals and COPY input 2007-09-12 20:49:27 +00:00
dbcommands.c Re-allow UTF8 encodings on win32. Since UTF8 is converted to 2007-10-16 11:30:16 +00:00
define.c Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
discard.c Rename the newly-added commands for discarding session state. 2007-04-26 16:13:15 +00:00
explain.c Arrange to cache a ResultRelInfo in the executor's EState for relations that 2007-08-15 21:39:50 +00:00
functioncmds.c Support SET FROM CURRENT in CREATE/ALTER FUNCTION, ALTER DATABASE, ALTER ROLE. 2007-09-03 18:46:30 +00:00
indexcmds.c HOT updates. When we update a tuple without changing any of its indexed 2007-09-20 17:56:33 +00:00
lockcmds.c Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
opclasscmds.c Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
operatorcmds.c Minimal message corrections found by spell checker. 2007-06-02 23:36:35 +00:00
portalcmds.c Disallow scrolling of FOR UPDATE/FOR SHARE cursors, so as to avoid problems 2007-10-24 23:27:08 +00:00
prepare.c Separate parse-analysis for utility commands out of parser/analyze.c 2007-06-23 22:12:52 +00:00
proclang.c Implement function-local GUC parameter settings, as per recent discussion. 2007-09-03 00:39:26 +00:00
schemacmds.c Separate parse-analysis for utility commands out of parser/analyze.c 2007-06-23 22:12:52 +00:00
sequence.c Fix ALTER SEQUENCE so that it does not affect the value of currval() for 2007-10-25 18:54:03 +00:00
tablecmds.c Remove hack in pg_tablespace_aclmask() that disallowed permissions 2007-10-12 18:55:12 +00:00
tablespace.c Support an optional asynchronous commit mode, in which we don't flush WAL 2007-08-01 22:45:09 +00:00
trigger.c Improve conversion of legacy CREATE CONSTRAINT TRIGGER representation of 2007-11-05 19:00:25 +00:00
tsearchcmds.c Suppress testing the options of CREATE TEXT SEARCH DICTIONARY during 2007-08-22 22:30:20 +00:00
typecmds.c Remove the hack in the grammar that "optimized away" DEFAULT NULL clauses. 2007-10-29 19:40:40 +00:00
user.c Support SET FROM CURRENT in CREATE/ALTER FUNCTION, ALTER DATABASE, ALTER ROLE. 2007-09-03 18:46:30 +00:00
vacuum.c Rearrange vacuum-related bits in PGPROC as a bitmask, to better support 2007-10-24 20:55:36 +00:00
vacuumlazy.c Adjust the new memory limit in the lazy vacuum code to use MaxHeapTuplesPerPage 2007-09-26 20:16:28 +00:00
variable.c Switch over to using the src/timezone functions for formatting timestamps 2007-08-04 01:26:54 +00:00
view.c Fix a couple of misbehaviors rooted in the fact that the default creation 2007-08-27 03:36:08 +00:00