Refer to the default foreign key match style as MATCH SIMPLE internally.
Tom Lane <tgl@sss.pgh.pa.us>
Refer to the default foreign key match style as MATCH SIMPLE internally. Previously we followed the SQL92 wording, "MATCH <unspecified>", but since SQL99 there's been a less awkward way to refer to the default style. In addition to the code changes, pg_constraint.confmatchtype now stores this match style as 's' (SIMPLE) rather than 'u' (UNSPECIFIED). This doesn't affect pg_dump or psql because they use pg_get_constraintdef() to reconstruct foreign key definitions. But other client-side code might examine that column directly, so this change will have to be marked as an incompatibility in the 9.3 release notes.
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/catalogs.sgml | modified | +1 −1 |
| src/backend/catalog/information_schema.sql | modified | +1 −1 |
| src/backend/commands/trigger.c | modified | +2 −2 |
| src/backend/parser/gram.y | modified | +2 −2 |
| src/backend/utils/adt/ri_triggers.c | modified | +122 −86 |
| src/backend/utils/adt/ruleutils.c | modified | +1 −1 |
| src/include/catalog/catversion.h | modified | +1 −1 |
| src/include/nodes/parsenodes.h | modified | +2 −2 |
| src/test/regress/expected/foreign_key.out | modified | +1 −1 |
| src/test/regress/sql/foreign_key.sql | modified | +1 −1 |