This is part #1 for of the DEFERRED CONSTRAINT TRIGGER support.
Jan Wieck <JanWieck@Yahoo.com>
This is part #1 for of the DEFERRED CONSTRAINT TRIGGER support.
Implements the CREATE CONSTRAINT TRIGGER and SET CONSTRAINTS commands.
TODO:
Generic builtin trigger procedures
Automatic execution of appropriate CREATE CONSTRAINT... at CREATE TABLE
Support of new trigger type in pg_dump
Swapping of huge # of events to disk
Jan
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/access/transam/xact.c | modified | +23 −1 |
| src/backend/catalog/heap.c | modified | +2 −3 |
| src/backend/catalog/indexing.c | modified | +4 −2 |
| src/backend/commands/trigger.c | modified | +1077 −62 |
| src/backend/executor/execMain.c | modified | +4 −7 |
| src/backend/parser/gram.y | modified | +154 −5 |
| src/backend/parser/keywords.c | modified | +8 −1 |
| src/backend/tcop/postgres.c | modified | +16 −2 |
| src/backend/tcop/utility.c | modified | +8 −1 |
| src/include/catalog/indexing.h | modified | +20 −16 |
| src/include/catalog/pg_attribute.h | modified | +11 −4 |
| src/include/catalog/pg_class.h | modified | +2 −2 |
| src/include/catalog/pg_trigger.h | modified | +17 −4 |
| src/include/commands/trigger.h | modified | +49 −0 |
| src/include/nodes/nodes.h | modified | +2 −1 |
| src/include/nodes/parsenodes.h | modified | +21 −1 |
| src/include/utils/rel.h | modified | +6 −1 |
| src/include/utils/tqual.h | modified | +15 −9 |
| src/test/regress/expected/triggers.out | modified | +0 −95 |
| src/test/regress/sql/triggers.sql | modified | +34 −28 |