From: Jeff Davis <pgsql@j-davis.com>
To: Kevin Grittner <kgrittn@postgresql.org>
Cc: pgsql-committers@postgresql.org
Subject: Re: pgsql: Fix documentation template for CREATE TRIGGER.
Date: Sun, 22 Jun 2014 12:19:49 -0700
Message-ID: <1403464789.9081.11.camel@jeff-desktop> (raw)
In-Reply-To: <E1WyMAC-0005Fp-FO@gemulon.postgresql.org>
References: <E1WyMAC-0005Fp-FO@gemulon.postgresql.org>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-committers>
On Sat, 2014-06-21 at 14:21 +0000, Kevin Grittner wrote:
> Fix documentation template for CREATE TRIGGER.
>
> By using curly braces, the template had specified that one of
> "NOT DEFERRABLE", "INITIALLY IMMEDIATE", or "INITIALLY DEFERRED"
> was required on any CREATE TRIGGER statement, which is not
> accurate. Change to square brackets makes that optional.
>
> Backpatch to 9.1, where the error was introduced.
It still doesn't look quite right to me. The new form:
[ NOT DEFERRABLE | [ DEFERRABLE ] { INITIALLY IMMEDIATE | INITIALLY
DEFERRED } ]
says that, if DEFERRABLE is specified, then INITIALLY IMMEDIATE or
INITIALLY DEFERRED is required. But the following is accepted by the
server:
create constraint trigger mytrigger
after insert on dummy_table deferrable
for each row execute procedure dummy_trigger();
(Although the standard doesn't seem to have deferrable triggers, that
does seem to match the deferrable constraint syntax that is in the
spec.)
For that matter, the following is also accepted by the server:
create constraint trigger mytrigger
after insert on dummy_table initially deferred deferrable
for each row execute procedure dummy_trigger();
That case may be a bug; and regardless I don't think we want to
document/encourage specifying them in that order. But the first case
seems reasonable to me.
Regards,
Jeff Davis
--
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers
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-committers@postgresql.org
Cc: pgsql@j-davis.com, kgrittn@postgresql.org
Subject: Re: pgsql: Fix documentation template for CREATE TRIGGER.
In-Reply-To: <1403464789.9081.11.camel@jeff-desktop>
* 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