Re: [HACKERS] Add support for tuple routing to foreign partitions

From: Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
To: Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp>
Cc: Stephen Frost <sfrost(at)snowman(dot)net>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, Maksim Milyutin <milyutinma(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] Add support for tuple routing to foreign partitions
Date: 2018-03-20 11:55:07
Message-ID: 5AB0F69B.1030002@lab.ntt.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi Amit,

(2018/03/20 15:57), Amit Langote wrote:
> On 2018/03/19 20:25, Amit Langote wrote:
>> That's all I have for now.

Will reply to your previous email.

> While testing this patch, I noticed a crash when performing EXPLAIN on
> update of a partition tree containing foreign partitions. Crash occurs in
> postgresEndForeignRouting() due to the following Assert failing:
>
> Assert(fmstate != NULL);
>
> It seems the problem is that ExecCleanupTupleRouting() invokes the
> EndForeignRouting() function even if ri_PartitionIsValid is not set. So I
> suppose we need this:
>
> /*
> - * If this is INSERT/UPDATE, allow any FDWs to shut down
> + * If this is INSERT/UPDATE, allow any FDWs to shut down if it has
> + * initialized tuple routing information at all.
> */
> if (node&&
> + resultRelInfo->ri_PartitionIsValid&&
> resultRelInfo->ri_FdwRoutine != NULL&&
> resultRelInfo->ri_FdwRoutine->EndForeignRouting != NULL)
> resultRelInfo->ri_FdwRoutine->EndForeignRouting(node->ps.state,

Will look into this.

> BTW,patch needs to be rebased because of two commits this morning:
> 6666ee49f [1] and ee0a1fc84 [2].

Will do.

Thanks for reviewing the patch!

Best regards,
Etsuro Fujita

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Konstantin Knizhnik 2018-03-20 12:00:33 Lack of T_TargetEntry in exprType function
Previous Message Etsuro Fujita 2018-03-20 11:53:23 Re: ON CONFLICT DO UPDATE for partitioned tables