From: Bruce Momjian <pgman@candle.pha.pa.us>
To: josh@agliodbs.com
Cc: Jean-Luc Lachance <jllachan@nsd.ca>
Cc: pgsql-sql <pgsql-sql@postgresql.org>
Subject: Re: Rules/Trigges Trade-offs
Date: Fri, 6 Dec 2002 18:30:13 -0500 (EST)
Message-ID: <200212062330.gB6NUDl20018@candle.pha.pa.us> (raw)
In-Reply-To: <200212061525.49284.josh@agliodbs.com>
Josh Berkus wrote:
>
> Bruce, Richard,
>
> > Triggers are mostly for testing/modifying the row being
> > inserted/updated, while rules are better for affecting other rows or
> > other tables.
>
> Hmmm. Thought that there were also some other criteria:
>
> 1) Rules can't use indexes to do their processing, so Rules which query large
> secondary tables can be a bad idea (maybe this has changed?)
I don't think this is true. Rewrite is before optimizer so it should be
optimized just the same.
>
> 2) Only Rules can "DO INSTEAD"; thus, only Rules are good for defining
> Read/Write views.
True.
> 3) There are no AFTER Rules, making, for example, a rule with a table check on
> the new data impractical, so you'd want to use Triggers or Constraints
We have changed ordering in 7.3 where I think INSERT rules are _after_
the insert.
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: pgman@candle.pha.pa.us, josh@agliodbs.com, jllachan@nsd.ca
Subject: Re: Rules/Trigges Trade-offs
In-Reply-To: <200212062330.gB6NUDl20018@candle.pha.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox