On 2017/05/08 10:22, Thomas Munro wrote:
> On Mon, May 8, 2017 at 12:47 PM, Amit Langote
> <langote_amit...@lab.ntt.co.jp> wrote:
>> On 2017/05/03 2:48, Robert Haas wrote:
>>> On Tue, May 2, 2017 at 3:30 AM, Amit Langote
>>> <langote_amit...@lab.ntt.co.jp> wrote:
>>>> You're right.  I agree that whatever text we add here should be pointing
>>>> out that statement-level triggers of affected child tables are not fired,
>>>> when root parent is specified in the command.
>>>>
>>>> Since there was least some talk of changing that behavior for regular
>>>> inheritance so that statement triggers of any affected children are fired
>>>> [1], I thought we shouldn't say something general that applies to both
>>>> inheritance and partitioning.  But since nothing has happened in that
>>>> regard, we might as well.
>>>>
>>>> How about the attached?
>>>
>>> Looks better, but I think we should say "statement" instead of
>>> "operation" for consistency with the previous paragraph, and it
>>> certainly shouldn't be capitalized.
>>
>> Agreed, done.  Attached updated patch.
> 
>     <para>
> +    A statement that targets the root table in a inheritance or partitioning
> +    hierarchy does not cause the statement-level triggers of affected child
> +    tables to be fired; only the root table's statement-level triggers are
> +    fired.  However, row-level triggers of any affected child tables will be
> +    fired.
> +   </para>
> +
> +   <para>
> 
> Why talk specifically about the "root" table?  Wouldn't we describe
> the situation more generally if we said [a,the] "parent"?

I think that makes sense.  Modified it to read: "A statement that targets
a parent table in a inheritance or partitioning hierarchy..." in the
attached updated patch.

Thanks,
Amit
>From 5c2c453235d5eedf857a5e7123337aae5aedd761 Mon Sep 17 00:00:00 2001
From: amit <amitlangot...@gmail.com>
Date: Mon, 24 Apr 2017 14:55:08 +0900
Subject: [PATCH] Clarify statement trigger behavior with inheritance

---
 doc/src/sgml/trigger.sgml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/doc/src/sgml/trigger.sgml b/doc/src/sgml/trigger.sgml
index 6f8416dda7..ce76a1f042 100644
--- a/doc/src/sgml/trigger.sgml
+++ b/doc/src/sgml/trigger.sgml
@@ -123,6 +123,14 @@
    </para>
 
    <para>
+    A statement that targets a parent table in a inheritance or partitioning
+    hierarchy does not cause the statement-level triggers of affected child
+    tables to be fired; only the parent table's statement-level triggers are
+    fired.  However, row-level triggers of any affected child tables will be
+    fired.
+   </para>
+
+   <para>
     If an <command>INSERT</command> contains an <literal>ON CONFLICT
     DO UPDATE</> clause, it is possible that the effects of all
     row-level <literal>BEFORE</> <command>INSERT</command> triggers
-- 
2.11.0

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to