Re: non-bulk inserts and tuple routing - Mailing list pgsql-hackers

From Amit Langote
Subject Re: non-bulk inserts and tuple routing
Date
Msg-id d9f2ef8c-a83e-7823-d73a-ba23ea2e7ffb@lab.ntt.co.jp
Whole thread Raw
In response to Re: non-bulk inserts and tuple routing  (Andres Freund <andres@anarazel.de>)
List pgsql-hackers
On 2018/03/03 13:48, Andres Freund wrote:
> On 2018-02-22 11:10:57 -0500, Robert Haas wrote:
>> On Tue, Feb 20, 2018 at 8:06 PM, Amit Langote
>> <Langote_Amit_f8@lab.ntt.co.jp> wrote:
>>>> Attached is an updated version for that.
>>>
>>> Thanks for updating the patch.
>>
>> Committed with a few changes.  The big one was that I got rid of the
>> local variable is_update in ExecSetupPartitionTupleRouting.  That
>> saved a level of indentation on a substantial chunk of code, and it
>> turns out that test was redundant anyway.
> 
> Btw, are there cases where this could change explain output?  If there's
> subplan references or such in any of returning / wcte expressions,
> they'd not get added at explain time.  It's probably fine because add
> the expressions also "staticly" in ExecInitModifyTable()?

Yes, I think.

Afaics, explain.c only looks at the information that is "statically" added
to ModifyTableState by ExecInitModifyTable.  It considers information
added by the tuple routing code only when printing information about
invoked triggers, that too, only in the case of EXPLAIN ANALYZE.

Thanks,
Amit



pgsql-hackers by date:

Previous
From: David Rowley
Date:
Subject: Re: Parallel Aggregates for string_agg and array_agg
Next
From: Thomas Munro
Date:
Subject: Re: JIT compiling with LLVM v11