From:
Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To:
Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
Cc:
Robert Haas <robertmhaas(at)gmail(dot)com>,
Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>,
PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject:
Re: Event Triggers: adding information
Date:
2013-01-16 23:14:41
Message-ID:
4717.1358378081@sss.pgh.pa.us (view raw or flat )
Thread:
2012-12-11 21:47:13 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-12 21:47:23 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-21 14:48:22 from Robert Haas <robertmhaas(at)gmail(dot)com>
2012-12-21 16:35:52 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-23 22:09:14 from Robert Haas <robertmhaas(at)gmail(dot)com>
2012-12-25 15:34:09 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-27 16:22:36 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-29 12:48:36 from Robert Haas <robertmhaas(at)gmail(dot)com>
2012-12-29 13:41:48 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-29 14:47:26 from Andrew Dunstan <andrew(at)dunslane(dot)net>
2012-12-29 16:29:49 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-12-25 18:42:24 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-29 13:11:00 from Robert Haas <robertmhaas(at)gmail(dot)com>
2012-12-29 14:02:41 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-04 20:52:51 from Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
2013-01-04 20:57:16 from Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
2013-01-04 21:49:52 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-09 16:58:29 from Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
2013-01-16 13:51:42 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-16 21:16:03 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-16 21:59:47 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-17 10:18:38 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-17 16:15:24 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-17 16:31:51 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-17 17:06:50 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-17 20:56:24 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-17 21:43:14 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-18 01:13:16 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-18 02:35:18 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 09:18:56 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-17 22:09:36 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 01:23:51 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-21 17:27:12 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-21 23:07:15 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-21 23:29:34 from "Dickson S(dot) Guedes" <listas(at)guedesoft(dot)net>
2013-01-22 12:02:04 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-22 12:29:26 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-23 02:55:14 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-23 09:57:52 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-23 14:33:58 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-23 19:36:18 from Bruce Momjian <bruce(at)momjian(dot)us>
2013-01-23 20:02:24 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-23 20:04:43 from Bruce Momjian <bruce(at)momjian(dot)us>
2013-01-24 10:51:12 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-25 15:04:19 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-22 12:56:02 from Thom Brown <thom(at)linux(dot)com>
2013-01-22 13:28:54 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-22 13:37:21 from Thom Brown <thom(at)linux(dot)com>
2013-01-22 14:45:40 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-22 14:47:28 from Thom Brown <thom(at)linux(dot)com>
2013-01-22 16:28:07 from Thom Brown <thom(at)linux(dot)com>
2013-01-22 16:38:37 from Thom Brown <thom(at)linux(dot)com>
2013-01-22 16:54:43 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-23 03:02:42 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-23 03:23:48 from Gavin Flower <GavinFlower(at)archidevsys(dot)co(dot)nz>
2013-01-23 03:37:57 from Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
2013-01-22 16:53:07 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-23 03:01:43 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-24 09:35:41 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-23 04:17:27 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-24 10:43:48 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-25 01:58:10 from Steve Singer <ssinger(at)ca(dot)afilias(dot)info>
2013-01-25 15:42:24 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-25 16:58:07 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-25 18:06:00 from Christopher Browne <cbbrowne(at)gmail(dot)com>
2013-01-27 04:11:42 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-27 17:08:33 from Steve Singer <ssinger(at)ca(dot)afilias(dot)info>
2013-01-27 17:20:18 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-27 17:57:11 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-27 19:08:47 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-27 20:51:54 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-28 23:07:32 from Christopher Browne <cbbrowne(at)gmail(dot)com>
2013-01-28 23:19:07 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-29 17:04:11 from Christopher Browne <cbbrowne(at)gmail(dot)com>
2013-01-29 22:51:57 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-17 19:44:12 from Simon Riggs <simon(at)2ndQuadrant(dot)com>
2013-01-17 20:24:38 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-17 21:51:03 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-17 22:35:51 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-17 22:48:23 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2013-01-17 23:22:10 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 01:33:34 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-18 02:31:28 from Craig Ringer <craig(at)2ndQuadrant(dot)com>
2013-01-18 02:34:37 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-18 02:36:04 from Craig Ringer <craig(at)2ndQuadrant(dot)com>
2013-01-18 02:48:01 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 03:01:25 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-18 03:14:04 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 15:01:48 from Simon Riggs <simon(at)2ndQuadrant(dot)com>
2013-01-18 03:39:18 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-18 14:07:21 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-18 14:58:53 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-18 15:47:32 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-18 16:42:47 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-18 17:08:57 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-18 17:44:13 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 18:03:26 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-18 18:22:55 from Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
2013-01-18 18:26:51 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-18 18:59:17 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 21:41:31 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-18 22:12:49 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 22:20:51 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-22 21:15:00 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-17 22:08:30 from Simon Riggs <simon(at)2ndquadrant(dot)com>
2013-01-17 22:47:27 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-18 02:27:36 from Craig Ringer <craig(at)2ndQuadrant(dot)com>
2013-01-16 23:14:41 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-16 23:42:33 from Robert Haas <robertmhaas(at)gmail(dot)com>
2012-12-30 04:13:47 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2012-12-30 12:18:32 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-31 05:15:38 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2012-12-21 21:30:46 from Andres Freund <andres(at)2ndquadrant(dot)com>
2012-12-27 18:42:12 from Simon Riggs <simon(at)2ndquadrant(dot)com>
Lists:
pgsql-hackers
Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr> writes:
> There's a difference between "it's not the way I would have done it" and
> "the author didn't think about what he's doing". That's also the reason
> why it's very hard to justify sending a polished enough patch as a non
> commiter.
> And then this patch is like the next one in a long series that is
> lasting for about 2 years now, and spliting it is just more work for
> everybody, and then you take the risk that the next commiter who looks
> at the patch prefers to see a complete enough view of the goal you're
> trying to reach.
What was discussed at the last dev meeting was assigning a committer to
each large patch to start with, which would reduce the risk of the
goalposts moving that way. It seems to me that Robert's at least
unofficially taken that role for event triggers. You should be happy,
because if I were reviewing it I'd likely bounce the whole thing.
I'm not convinced this will *ever* be a stable feature that doesn't
create more problems than it fixes.
> What I think you're missing here is the proposal flying around to have
> drop operation get back to ProcessUtility so that C hooks and event
> triggers both can have at it.
I've seen no such proposal, and it seems like a nonstarter just from the
idea. dependency.c doesn't have a syntax tree to describe each object
that it finds to drop; creating one, and then doing a lookup to re-find
the object, is just going to make drops hugely slower and buggier. Not
to mention the large amount of code that would have to be added and
maintained. Not to mention that the objects dependency.c works with
aren't necessarily all that interesting from the user's level --- for
instance, do you really want to see each column default expression
dropped individually? Not to mention that the permissions
considerations are different from a standalone DROP.
The bigger picture there is that it's taken us years, and multiple major
iterations, to get cascaded drops to work properly and reliably. I'm
disinclined to rip that code open and rewrite it completely; let alone
add hooks that might inject random operations at any point in the
process.
regards, tom lane
In response to
Responses
pgsql-hackers by date
Next :From: Robert HaasDate: 2013-01-16 23:19:09
Subject : Re: [PATCH] COPY .. COMPRESSED
Previous :From : Tatsuo IshiiDate : 2013-01-16 22:59:54
Subject : Re: review: pgbench - aggregation of info written into
log