Re: Deprecating RULES

From: Greg Stark <stark(at)mit(dot)edu>
To: Simon Riggs <simon(at)2ndquadrant(dot)com>
Cc: Peter Geoghegan <peter(at)2ndquadrant(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Deprecating RULES
Date: 2012-10-14 23:30:56
Message-ID: CAM-w4HMRDa21aYj3Ck4sVRaGDqZcHgxPDRcT71ad8iaZ8eZFsA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sun, Oct 14, 2012 at 9:30 AM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> On 12 October 2012 19:48, Greg Stark <stark(at)mit(dot)edu> wrote:
>> On Fri, Oct 12, 2012 at 7:55 AM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
>>> AFAICS all RULEs can be re-expressed as Triggers or Views.
>>
>> This is a bizarre discussion. Firstly this isn't even close to true.
>> The whole source of people's discontentment is that triggers are *not*
>> equivalent to rules. If they were then they wouldn't be so upset.
>
> This may be a confusion on the point of equivalence; clearly the
> features work differently.
>
> I'm not aware of any rule that can't be rewritten as a trigger or a
> view. Please can anyone show me some examples of those?

Huh? The one thing we currently use rules for, implementing views,
couldn't be done in triggers. In general if your source table is empty
then there's *nothing* you could cause to happen with triggers because
no triggers will fire.

The analogy to this discussion would be something like "users get
confused by macros in C and usually what they're trying to do can be
better done with functions. now that we have functions we should
deprecate macros" All of the preconditions in that sentence are true
but it doesn't follow because macros exist for a reason.

In fact it's not a very good analogy because the situation is
*precisely* the same -- rules *are* macros and manipulate the raw sql
before it's run and the reason they can't be replaced by triggers is
because, like functions, triggers happen after the code is compiled
and run.

--
greg

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Johnston 2012-10-15 00:41:18 Re: Deprecating RULES
Previous Message Greg Stark 2012-10-14 23:06:27 Re: Potential autovacuum optimization: new tables