postgresql/doc/src/sgml
Tom Lane 7bddca3450 Fix up foreign-key mechanism so that there is a sound semantic basis for the
equality checks it applies, instead of a random dependence on whatever
operators might be named "=".  The equality operators will now be selected
from the opfamily of the unique index that the FK constraint depends on to
enforce uniqueness of the referenced columns; therefore they are certain to be
consistent with that index's notion of equality.  Among other things this
should fix the problem noted awhile back that pg_dump may fail for foreign-key
constraints on user-defined types when the required operators aren't in the
search path.  This also means that the former warning condition about "foreign
key constraint will require costly sequential scans" is gone: if the
comparison condition isn't indexable then we'll reject the constraint
entirely. All per past discussions.

Along the way, make the RI triggers look into pg_constraint for their
information, instead of using pg_trigger.tgargs; and get rid of the always
error-prone fixed-size string buffers in ri_triggers.c in favor of building up
the RI queries in StringInfo buffers.

initdb forced due to columns added to pg_constraint and pg_trigger.
2007-02-14 01:58:58 +00:00
..
ref Improve documentation for CREATE CONSTRAINT TRIGGER. 2007-02-10 20:43:59 +00:00
advanced.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
arch-dev.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
array.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
backup.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
biblio.sgml Update URL for "Generalized Partial Indexes" paper to point to a cached 2007-02-08 04:31:37 +00:00
bki.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
catalogs.sgml Fix up foreign-key mechanism so that there is a sound semantic basis for the 2007-02-14 01:58:58 +00:00
charset.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
client-auth.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
config.sgml This patch fixes shared_preload_libraries on Windows hosts. It forces 2007-02-08 15:46:04 +00:00
contacts.sgml Make $PostgreSQL CVS tags consistent for SGML files. 2006-03-10 19:10:50 +00:00
cvs.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
datatype.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
datetime.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
ddl.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
dfunc.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
diskusage.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
dml.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
docguide.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
ecpg.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
errcodes.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
extend.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
external-projects.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
features.sgml Update SQL conformance information about XML features. 2007-02-03 17:59:36 +00:00
filelist.sgml Rename replication section "High Availability and Load Balancing". 2006-11-17 16:38:44 +00:00
fixrtf Add CVS tag lines to files that were lacking them. 2006-03-11 04:38:42 +00:00
func.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
geqo.sgml Remove emacs info from footer of SGML files. 2006-09-16 00:30:20 +00:00
gin.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
gist.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
high-availability.sgml Mention file system replication as a high availability solution in the 2007-02-01 21:02:48 +00:00
history.sgml Spellchecking and such 2006-10-23 18:10:32 +00:00
indexam.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
indices.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
info.sgml Make $PostgreSQL CVS tags consistent for SGML files. 2006-03-10 19:10:50 +00:00
information_schema.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
install-win32.sgml Reword suggestion that libpq.dll be installed in WINNT\SYSTEM32 under 2007-02-02 16:10:08 +00:00
installation.sgml Document that a client-only install using: 2007-02-03 23:01:06 +00:00
intro.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
keywords.sgml Support type modifiers for user-defined types, and pull most knowledge 2006-12-30 21:21:56 +00:00
legal.sgml Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
libpq.sgml Not only did we agree that this 'hint' doesn't belong here, but the 2007-02-06 03:03:11 +00:00
lobj.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
maintenance.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
Makefile Unbreak the SGML doc build: ":=" is needed to assign to variables if 2007-02-09 20:40:13 +00:00
manage-ag.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
mk_feature_tables.pl Add CVS tag lines to files that were lacking them. 2006-03-11 04:38:42 +00:00
monitoring.sgml Add a function pg_stat_clear_snapshot() that discards any statistics snapshot 2007-02-07 23:11:30 +00:00
mvcc.sgml Add lock matrix to documentation. 2007-02-08 15:32:11 +00:00
nls.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
notation.sgml Make $PostgreSQL CVS tags consistent for SGML files. 2006-03-10 19:10:50 +00:00
perform.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
planstats.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
plhandler.sgml Remove emacs info from footer of SGML files. 2006-09-16 00:30:20 +00:00
plperl.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
plpgsql.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
plpython.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
pltcl.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
postgres.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
problems.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
protocol.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
queries.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
query.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
reference.ced Deprecate 'current' for date/time input. 2001-11-21 05:53:41 +00:00
reference.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
regress.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
release.sgml Stamp releases notes for 8.2.3, 8.1.8, 8.0.12. 2007-02-07 04:22:44 +00:00
rowtypes.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
rules.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
runtime.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
sources.sgml Fix broken markup. 2007-02-01 22:06:14 +00:00
spi.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
sql.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
standalone-install.sgml $Header: -> $PostgreSQL Changes ... 2003-11-29 19:52:15 +00:00
start.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
storage.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
stylesheet-common.xsl Reorganize XSLT stylesheet support. Put common things into a separate 2006-12-10 16:01:06 +00:00
stylesheet-fo.xsl Reorganize XSLT stylesheet support. Put common things into a separate 2006-12-10 16:01:06 +00:00
stylesheet-hh.xsl Reorganize XSLT stylesheet support. Put common things into a separate 2006-12-10 16:01:06 +00:00
stylesheet.css Override upstream DSSSL style sheet formatting changes 2004-06-29 20:44:34 +00:00
stylesheet.dsl Back out double-run of PDF/PS output. Requires building bookindex.sgml 2006-12-15 16:50:07 +00:00
stylesheet.xsl Reorganize XSLT stylesheet support. Put common things into a separate 2006-12-10 16:01:06 +00:00
syntax.sgml Move NAMEDATALEN definition from postgres_ext.h to pg_config_manual.h. It 2007-02-06 09:16:08 +00:00
trigger.sgml Fix up foreign-key mechanism so that there is a sound semantic basis for the 2007-02-14 01:58:58 +00:00
typeconv.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
user-manag.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
wal.sgml Update documentation on may/can/might: 2007-01-31 20:56:20 +00:00
xaggr.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
xfunc.sgml Wording cleanup for error messages. Also change can't -> cannot. 2007-02-01 19:10:30 +00:00
xindex.sgml Docs updates for cross-type hashing. 2007-02-06 04:38:31 +00:00
xoper.sgml Docs updates for cross-type hashing. 2007-02-06 04:38:31 +00:00
xplang.sgml Consistenly use colons before '<programlisting>' blocks, where 2007-02-01 00:28:19 +00:00
xtypes.sgml Remove emacs info from footer of SGML files. 2006-09-16 00:30:20 +00:00