Re: ON CONFLICT DO UPDATE for partitioned tables

From: Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
To: Pavan Deolasee <pavan(dot)deolasee(at)gmail(dot)com>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: ON CONFLICT DO UPDATE for partitioned tables
Date: 2018-03-16 11:43:30
Message-ID: 5AABADE2.3040805@lab.ntt.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

(2018/03/16 19:43), Pavan Deolasee wrote:
> On Fri, Mar 2, 2018 at 9:06 PM, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com
> <mailto:alvherre(at)2ndquadrant(dot)com>> wrote:

> @@ -106,6 +120,9 @@ typedef struct PartitionTupleRouting
> int num_subplan_partition_offsets;
> TupleTableSlot *partition_tuple_slot;
> TupleTableSlot *root_tuple_slot;
> + List **partition_arbiter_indexes;
> + TupleTableSlot **partition_conflproj_slots;
> + TupleTableSlot **partition_existing_slots;
> } PartitionTupleRouting;

> I am curious why you decided to add these members to
> PartitionTupleRouting structure. Wouldn't ResultRelationInfo be a better
> place to track these or is there some rule that we follow?

I just started reviewing the patch, so maybe I'm missing something, but
I think it would be a good idea to have these in that structure, not in
ResultRelInfo, because these would be required only for partitions
chosen via tuple routing.

Best regards,
Etsuro Fujita

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Pavan Deolasee 2018-03-16 11:59:36 Re: ON CONFLICT DO UPDATE for partitioned tables
Previous Message Etsuro Fujita 2018-03-16 11:37:24 Re: inserts into partitioned table may cause crash