Re: pointless check in RelationBuildPartitionDesc

Amit Langote <langote_amit_f8@lab.ntt.co.jp>

From: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
To: Michael Paquier <michael@paquier.xyz>
Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2018-09-04T01:23:19Z
Lists: pgsql-hackers
On 2018/09/04 10:19, Michael Paquier wrote:
> On Tue, Sep 04, 2018 at 09:47:07AM +0900, Amit Langote wrote:
>> On 2018/09/04 6:39, Alvaro Herrera wrote:
>>> After looking, it seems that this is just self-inflicted pain: for some
>>> reason, we store the pg_inherits row for a partition, and immediately
>>> afterwards compute and store its partition bound, which requires the
>>> above hack.  But if we do things in the opposite order, this is no
>>> longer needed.  I propose to remove it, as in the attached patch.
>>
>> +1.  I remember having facepalmed at this before and had also written a
>> patch but never got around to submitting it.
> 
> Ok, I see.  It seems to me that this could be replaced by an
> elog(ERROR), as relispartition ought to be set anyway.  This way any
> future callers would get things done in the correct order.

Converting it to elog(ERROR, ...) might be a good idea.

Thanks,
Amit



Commits

  1. Simplify partitioned table creation vs. relcache