Re: delta relations in AFTER triggers
Kevin Grittner <kgrittn@gmail.com>
From: Kevin Grittner <kgrittn@gmail.com>
To: Michael Paquier <michael.paquier@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>, David Fetter <david@fetter.org>, Kevin Grittner <kgrittn@ymail.com>, Tom Lane <tgl@sss.pgh.pa.us>, Heikki Linnakangas <hlinnakangas@vmware.com>,
Amit Khandekar <amit.khandekar@enterprisedb.com>, Alvaro Herrera <alvherre@2ndquadrant.com>,
Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2016-11-04T16:09:26Z
Lists: pgsql-hackers
On Sun, Oct 30, 2016 at 10:35 AM, Kevin Grittner <kgrittn@gmail.com> wrote: > On Sun, Oct 2, 2016 at 11:20 PM, Michael Paquier <michael.paquier@gmail.com> wrote: >> Not as big as I thought, only 2k when both patches are combined... The >> patch without noapi in its name needs to be applied first, and after >> the patch with noapi can be applied. >> 60 files changed, 2073 insertions(+), 63 deletions(-) >> Moved to next CF. > > In an attempt to make this patch more digestible for reviewers, I > have split it up as follows: > > transition-c-triggers-only-v7.diff > 17 files changed, 581 insertions(+), 47 deletions(-) > > This part is virtually unchanged (just curing bit-rot) since > August, 2014, when I believe I had addressed all issues raised by > reviewers. It does provide a barely usable feature, since the > syntax for transition tables is added and tuplestores are created > when needed (and only when needed), with references stored in the > TriggerData structure. No new execution nodes are provided, so > only C triggers can use these relations, and must explicitly and > directly access the tuplestores from within the C code -- there is > no support for referencing these tuplestores from within queries. > > This is basic infrastructure needed for the more complete feature. > As far as I know there are no objections to what is implemented > here. I have pulled it out to make the review of the more > controversial portions easier. Since it had quite a bit of review > two years ago, I will do some testing to make sure that nothing has > broken and then push this part in a few days if there are no > objections. Hearing none, done. Hopefully that makes what remains easier to review. During final testing I was annoyed by the thin support for CREATE TRIGGER in the tab completion code, so I improved that a bit and pushed that, too. -- Kevin Grittner EDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
Don't permit transition tables with TRUNCATE triggers.
- 29fd3d9da0ff 10.0 landed
-
Pass EXEC_FLAG_REWIND when initializing a tuplestore scan.
- 304007d9f1f6 10.0 landed
-
Faster expression evaluation and targetlist projection.
- b8d7f053c5c2 10.0 cited
-
Remove obsoleted code relating to targetlist SRF evaluation.
- ea15e18677fc 10.0 cited
-
Implement syntax for transition tables in AFTER triggers.
- 8c48375e5f43 10.0 cited