Re: TRIGGER with WHEN clause - Mailing list pgsql-hackers

From Itagaki Takahiro
Subject Re: TRIGGER with WHEN clause
Date
Msg-id 20091118174602.A4C4.52131E4D@oss.ntt.co.jp
Whole thread Raw
In response to Re: TRIGGER with WHEN clause  (KaiGai Kohei <kaigai@ak.jp.nec.com>)
Responses Re: TRIGGER with WHEN clause
Re: TRIGGER with WHEN clause
Re: TRIGGER with WHEN clause
List pgsql-hackers
KaiGai Kohei <kaigai@ak.jp.nec.com> wrote:

> In addition, I could find a few matters.
> * TOAST may be necessary for pg_trigger?

I added toast relation to pg_trigger.
    DECLARE_TOAST(pg_trigger, 2336, 2337);

I think having a toast relation for pg_trigger is reasonable
because pg_trigger already has a variable field "tgargs"
even if we don't have the new field "tgqual" from the patch.
I'm not sure why we don't have a toast relation for pg_trigger
because user might pass very long trigger arguments.

> * ROW INSERT TRIGGER on COPY FROM statement

Thanks. Good catch! Fixed and regression test added.

> * Using system column in WHEN clause
> 2) Describe a notice on the user documentation not to use system columns
>    in the WHEN clause, because these are assigned on after the trigger
>    invocations.

I'd like to only add documentation because I don't have a whole solution.
----
System columns are not available in the <literal>WHEN</> clause
because those values are initialized after triggers are called.
They might return wrong values if they used in expressions of the clause.
----

Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center


Attachment

pgsql-hackers by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: RFC for adding typmods to functions
Next
From: Simon Riggs
Date:
Subject: Re: Syntax for partitioning